Files
wasmtime/tests/parser/rewrite.cton
Jakob Stoklund Olesen a39e418d32 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.
2016-07-08 15:15:53 -07:00

25 lines
745 B
Plaintext

; The .cton parser can't preserve the actual entity numbers in the input file
; since entities are numbered as they are created. For entities declared in the
; preamble, this is no problem, but for EBB and value references, mapping
; source numbers to real numbers can be a problem.
;
; It is possible to refer to instructions and EBBs that have not yet been
; defined in the lexical order, so the parser needs to rewrite these references
; after the fact.
; Check that defining numbers are rewritten.
function defs() {
ebb100(v20: i32):
v1000 = iconst.i32x8 5
vx200 = f64const 0x4.0p0
trap
}
; Using values.
function use_value() {
ebb100(v20: i32):
v1000 = iadd_imm v20, 5
vx200 = iadd v20, v1000
jump ebb100(v1000)
}