Rewrite EBB and value references after parsing.

We llow forward references to values and EBBs, so it is not possible to rewrite
these from the source domain to the in-memory domain during parsing.

Instead go through all the instructions after parsing everything and rewrite the
value and EBB references when everything has been created and mapped.
This commit is contained in:
Jakob Stoklund Olesen
2016-07-08 15:15:53 -07:00
parent 3c5c5a9e40
commit 6587784d7d
5 changed files with 168 additions and 7 deletions

View File

@@ -0,0 +1,13 @@
function defs() {
ebb0(vx0: i32):
v0 = iconst.i32x8 5
v1 = f64const 0x1.0000000000000p2
trap
}
function "use_value"() {
ebb0(vx0: i32):
v0 = iadd_imm vx0, 5
v1 = iadd vx0, v0
jump ebb0(v0)
}