Takeshi Yoneda
27624049dc
wazevo(frontend): faster non-imported global access ( #1889 )
...
Release CLI / Pre-release build (push) Has been cancelled
Release CLI / Pre-release test (macos-12) (push) Has been cancelled
Release CLI / Pre-release test (ubuntu-22.04) (push) Has been cancelled
Release CLI / Pre-release test (windows-2022) (push) Has been cancelled
Release CLI / Release (push) Has been cancelled
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-12-22 08:04:48 -08:00
Takeshi Yoneda
866d555874
wazevo(arm64): optimize out unnecessary UExtend ( #1886 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-12-21 08:46:05 -08:00
Takeshi Yoneda
fa2b2fc090
wazevo(frontend): simple bounds check elimination on mem access ( #1883 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-12-20 07:51:19 -08:00
Takeshi Yoneda
d26cbadd46
wazevo(arm64): adds missing PerfMapEnabled branch ( #1882 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-12-19 15:13:03 -08:00
Takeshi Yoneda
1a067a5e28
wazevo(arm64): lower constant bitwise ops with bitmask immeidates ( #1881 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-12-19 12:49:49 -08:00
Takeshi Yoneda
fe5aebc764
wazevo: adds perfmap build tag to write perf-map ( #1880 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-12-19 08:26:47 -08:00
Takeshi Yoneda
8303a56731
wazevo(arm64): fixes lowerLoadSplatFromAddressMode for zero offset ( #1877 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-12-15 20:19:14 -08:00
Edoardo Vacchi
ebaa5a0ebf
ci: run integration tests against the optimizing compiler (linux/arm64) ( #1875 )
...
Signed-off-by: Edoardo Vacchi <evacchi@users.noreply.github.com >
Co-authored-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-12-15 09:24:07 -08:00
Takeshi Yoneda
a6fea913e8
wazevo(arm64): relocations for large conditional branches ( #1873 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-12-14 12:45:44 -08:00
Takeshi Yoneda
87a48d8eee
Introduces the new optimizing compiler (wazevo) in experimental pkg ( #1869 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-12-14 08:27:35 -08:00
Takeshi Yoneda
5d1d15fb9f
wazevo: cleans up debug options ( #1867 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-12-13 07:19:21 -08:00
Takeshi Yoneda
1afa54fee4
wazevo(regalloc): fixes phi spill logic ( #1846 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-24 09:43:57 +09:00
Takeshi Yoneda
b4c1f26232
wazevo(regalloc): specifies the VReg in swapping ( #1843 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-20 16:29:00 +09:00
Takeshi Yoneda
4f6d214332
wazevo(regalloc): set reg usage flag in swaps ( #1842 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-20 14:52:08 +09:00
Takeshi Yoneda
374d6ff712
wazevo: implements linear reg alloc algorithm ( #1829 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-16 14:46:03 +09:00
Takeshi Yoneda
73d6c3b382
wazevo(arm64): fixes Vector select ( #1840 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-16 14:38:58 +09:00
Takeshi Yoneda
ecef21ccfb
wazevo(arm64): fixes Vector select ( #1839 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-15 15:26:37 +09:00
Takeshi Yoneda
0a2e2c2c51
wazevo(arm64): fixes BSL use/def info ( #1838 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-15 12:03:39 +09:00
Takeshi Yoneda
33d815fe40
wazevo(arm64): fixes lowerSelectVec ( #1837 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-15 09:08:25 +09:00
Takeshi Yoneda
a1b48079b9
wazevo(arm64): fixes lowerVMinMaxPseudo ( #1836 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-15 08:13:07 +09:00
Takeshi Yoneda
6a7e474e02
wazevo(arm64): reuses queue in addr lowering ( #1835 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-13 12:06:30 +09:00
Takeshi Yoneda
2d760b400f
wazevo(ssa): resets nextVariable ( #1834 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-13 09:43:45 +09:00
Takeshi Yoneda
9bc1ae6816
wazevo(arm64): places spill slots below clobbered regs ( #1833 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-10 11:27:13 +09:00
Takeshi Yoneda
b16e47721b
wazevo(arm64): fixes copyToTmp ( #1832 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-09 15:55:21 +09:00
Takeshi Yoneda
cfc2b25b9f
wazevo(arm64): fixes tmp register types ( #1831 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-09 14:50:32 +09:00
Takeshi Yoneda
a4b4801d53
wazevo(arm64): use tmp regs to store values used during branches ( #1830 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-09 14:17:52 +09:00
Takeshi Yoneda
d3b83a596c
wazevo(ssa): resets loop header flag ( #1828 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-11-02 14:33:39 +09:00
Edoardo Vacchi
9841c5fc04
wazevo: fuzz, fix Fcopysign ( #1826 )
...
Signed-off-by: Edoardo Vacchi <evacchi@users.noreply.github.com >
2023-11-01 07:36:28 +09:00
Edoardo Vacchi
928fce854f
wazevo: fuzz, fix ssa.OpcodeInsertlane ( #1825 )
...
Signed-off-by: Edoardo Vacchi <evacchi@users.noreply.github.com >
2023-10-31 23:18:46 +01:00
Edoardo Vacchi
ec1844c6fc
wazevo: fuzz, fix f64x2.pmin ( #1824 )
...
Signed-off-by: Edoardo Vacchi <evacchi@users.noreply.github.com >
2023-10-31 14:27:44 +01:00
Takeshi Yoneda
546af90adb
wazevo: adds 16 bytes to the new stack size ( #1823 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-10-31 10:20:53 +09:00
Takeshi Yoneda
6f16354ec7
wazevo: refactors liveness analysis ( #1821 )
...
This refactors the liveness analysis and starts using the different algorithm,
which results in 30s -> 12s for Python binary compilation.
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-10-31 08:12:17 +09:00
Edoardo Vacchi
695b49e94d
wazevo: fuzz, fix i16x8.narrow_i32x4_u ( #1820 )
...
Signed-off-by: Edoardo Vacchi <evacchi@users.noreply.github.com >
2023-10-29 08:02:08 +08:00
Edoardo Vacchi
a5d1b12385
wazevo: fuzz, fix load_splat with offset values > 12 bits ( #1817 )
...
Signed-off-by: Edoardo Vacchi <evacchi@users.noreply.github.com >
2023-10-25 17:33:57 +02:00
Edoardo Vacchi
e3e5b9942d
wazevo: fuzz, select does not return the correct value for vectors ( #1814 )
...
Signed-off-by: Edoardo Vacchi <evacchi@users.noreply.github.com >
2023-10-25 17:32:25 +02:00
Val Packett
99c057bcb5
compiler: add munmap finalizer on cache hits to avoid memory leak ( #1815 )
...
Signed-off-by: Val Packett <val@packett.cool >
2023-10-25 16:01:01 +08:00
Takeshi Yoneda
610fdbd664
wazevo(regalloc): deletes unnecessary kills info ( #1813 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-10-23 17:38:28 +09:00
Edoardo Vacchi
1748dbcfe8
wazevo: fuzz, fix load_splat ( #1810 )
...
Signed-off-by: Edoardo Vacchi <evacchi@users.noreply.github.com >
Co-authored-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-10-23 09:17:37 +02:00
Takeshi Yoneda
95a240370c
wazevo(regalloc): fixes the PHI value liverange ( #1812 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-10-23 13:20:22 +09:00
Achille
f1812c3a1b
wazevo: optimize regalloc virtual register collections ( #1806 )
...
Signed-off-by: Achille Roussel <achille.roussel@gmail.com >
Co-authored-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-10-20 10:07:14 +09:00
Achille
ff6039a41f
wazevo: repesent regalloc kills with a bitset ( #1804 )
...
Signed-off-by: Achille Roussel <achille.roussel@gmail.com >
Co-authored-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-10-20 09:50:09 +09:00
Achille
d1fabfb8be
wazevo: reduce memory footprint of regalloc kills ( #1803 )
...
Signed-off-by: Achille Roussel <achille.roussel@gmail.com >
2023-10-20 09:25:09 +09:00
Achille
4b6f8f7ccf
wazevo: add VRegTable data structure ( #1802 )
...
Signed-off-by: Achille Roussel <achille.roussel@gmail.com >
2023-10-19 09:36:56 -07:00
Takeshi Yoneda
2084866060
wazevo(regalloc): removes map usage in real reg tracking ( #1801 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-10-19 14:25:04 +09:00
Takeshi Yoneda
862c9722b6
wazevo(backend): makes VRegID continuous ( #1800 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-10-19 14:12:58 +09:00
Takeshi Yoneda
86b8abecf4
wazevo(regalloc): removes map usage of phi tracking ( #1799 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-10-19 13:18:59 +09:00
Takeshi Yoneda
06136049e5
wazevo(regalloc): simplifies live range management ( #1798 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-10-19 11:37:51 +09:00
Edoardo Vacchi
9264104c0b
wazevo: fuzz, fix simd shl, shr, shuffle, vbitselect ( #1797 )
2023-10-19 07:10:45 +09:00
Takeshi Yoneda
2ca59ecee8
wazevo: pass reset func to NewPool ( #1796 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-10-18 16:09:54 +09:00
Takeshi Yoneda
75e5708375
wazevo: reduces map usages ( #1795 )
...
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com >
2023-10-18 15:02:16 +09:00