| (module |
| (func $test |
| (local $x i32) |
| (local $y i64) |
| (local $z f32) |
| (local $w f64) |
| (local $F funcref) |
| (local $A anyref) |
| (local $N nullref) |
| (local $E exnref) |
| |
| (drop (local.get $x)) |
| (drop (local.get $y)) |
| (drop (local.get $z)) |
| (drop (local.get $w)) |
| (drop (local.get $F)) |
| (drop (local.get $A)) |
| (drop (local.get $N)) |
| (drop (local.get $E)) |
| |
| (drop (local.get $x)) |
| (drop (local.get $y)) |
| (drop (local.get $z)) |
| (drop (local.get $w)) |
| (drop (local.get $F)) |
| (drop (local.get $A)) |
| (drop (local.get $N)) |
| (drop (local.get $E)) |
| |
| (local.set $x (i32.const 1)) |
| (local.set $y (i64.const 2)) |
| (local.set $z (f32.const 3.21)) |
| (local.set $w (f64.const 4.321)) |
| (local.set $F (ref.func $test)) |
| (local.set $A (local.get $A)) |
| (local.set $N (ref.null)) |
| (local.set $E (local.get $E)) |
| |
| (local.set $x (i32.const 11)) |
| (local.set $y (i64.const 22)) |
| (local.set $z (f32.const 33.21)) |
| (local.set $w (f64.const 44.321)) |
| (local.set $F (local.get $F)) |
| (local.set $A (local.get $A)) |
| (local.set $N (local.get $N)) |
| (local.set $E (local.get $E)) |
| |
| ;; Pop instructions should not be instrumented |
| (local.set $F (funcref.pop)) |
| (local.set $A (anyref.pop)) |
| (local.set $N (nullref.pop)) |
| (local.set $E (exnref.pop)) |
| ) |
| ) |
| |