Commit Graph

20 Commits

Author SHA1 Message Date
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
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
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
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
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
Takeshi Yoneda
991f4642c8 wazevo(arm64): mandates SSA type spec on tmp VReg (#1769)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2023-10-09 12:50:35 +09:00
Takeshi Yoneda
09da2e94b2 wazevo: adds support for DWARF based stack trace (#1734)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2023-09-25 10:54:19 +09:00
Takeshi Yoneda
9c4291a581 wazevo: shares entry preambles by functions of the same type (#1703)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2023-09-13 10:57:57 +09:00
Takeshi Yoneda
1cf7d0d1cd wazevo: passes multiple return spectests (#1701)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2023-09-13 08:50:58 +09:00
Takeshi Yoneda
d3e8f79890 wazevo: adds initial support for SIMD vectors (#1690)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2023-09-07 11:55:14 +09:00
Takeshi Yoneda
405a5c9dac wazevo: adds tests for high register pressure (#1686)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2023-09-05 10:37:36 +09:00
Takeshi Yoneda
30a970bb1d wazevo: introduces the deterministic compilation verifier (#1673)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2023-08-30 12:49:13 +09:00
Takeshi Yoneda
c592c8e5c1 wazevo: removes unused SSA insts, centralizes debug toggles (#1671)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2023-08-30 08:16:51 +09:00
Takeshi Yoneda
f96f097b39 wazevo: pass memory_grow.wast (#1656)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2023-08-24 10:51:28 +09:00
Takeshi Yoneda
1223d11d6a wazevo: pass memory_size.wast (#1653)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2023-08-23 14:59:29 +09:00
Takeshi Yoneda
adaa417c2f wazevo: pass address.wast (#1649)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2023-08-23 08:04:22 +09:00
Takeshi Yoneda
9e944dcc83 regalloc: enforces unique definition of virtual regs (#1639)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2023-08-19 09:04:40 +09:00
Takeshi Yoneda
01dd74ce73 wazevo: adds support for call_indirect (#1632)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2023-08-16 13:07:13 +09:00
Takeshi Yoneda
02900879bf wazevo: initial impl of the new optimizing backend (#1615)
Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
2023-08-09 10:45:23 +09:00