From 19bbdfa3c7ae05f4694ce5e434d9855c6f2c3682 Mon Sep 17 00:00:00 2001
From: lemon <lsof@mailbox.org>
Date: Sat, 24 Jun 2023 18:47:05 +0200
Subject: backend: fix regalloc to work with more complex dataflow

basically an allocation map at the beginning (in) and end (out) of each
block is kept and after the first allocation pass another pass is ran to
resolve allocation conflicts between each edge, plus another pass to
finish lowering phi functions.
also introduced `regset` and plenty of other miscellaneous fixes
---
 op.def | 1 +
 1 file changed, 1 insertion(+)

(limited to 'op.def')

diff --git a/op.def b/op.def
index 6ff6882..7c5d3ea 100644
--- a/op.def
+++ b/op.def
@@ -68,6 +68,7 @@ _(call,     2)
 _(call2r,   1)
 _(intrin,   2)
 _(phi,      1)
+_(swap,     2)
 /* machine-specific instructions */
 _(xinc,      1)
 _(xdec,      1)
-- 
cgit v1.2.3

