1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00
v/vlib/wasm/tests/patch_test.v

31 lines
556 B
V
Raw Permalink Normal View History

module main
import wasm
fn test_patch() {
mut m := wasm.Module{}
vsp := m.new_global('__vsp', false, .i32_t, true, wasm.constexpr_value(10))
mut at := m.new_function('add', [], [])
{
pp := at.patch_pos()
at.drop()
at.i32_const(10)
at.i32_const(10)
at.i32_const(10)
at.drop()
at.drop()
at.drop()
pps := at.patch_pos()
{
at.i32_const(10)
at.i32_const(10)
at.global_set(vsp)
at.i32_const(10)
at.global_set(vsp)
}
at.patch(pp, pps) // move to start
}
m.commit(at, true)
validate(m.compile()) or { panic(err) }
}