(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)) ) )