blob: 51599420557f4dc4eb2bb3377926f521cea4cf9f [file] [log] [blame] [edit]
(module
(type $0 (func))
(import "env" "table" (table $timport$9 7 funcref))
(import "env" "__syscall6" (func $syscall$6 (param i32 i32) (result i32)))
(import "env" "__syscall54" (func $syscall$54 (param i32 i32) (result i32)))
(memory $8 256 256)
(data (i32.const 1024) "hello, world!\n\00\00\9c\0c\00\00-+ 0X0x\00(null)\00\00\00\00\00\00\00\00\00\00\00\00\11\00\n\00\11\11\11\00\00\00\00\05\00\00\00\00\00\00\t\00\00\00\00\0b\00\00\00\00\00\00\00\00\11\00\0f\n\11\11\11\03\n\07\00\01\13\t\0b\0b\00\00\t\06\0b\00\00\0b\00\06\11\00\00\00\11\11\11\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0b\00\00\00\00\00\00\00\00\11\00\n\n\11\11\11\00\n\00\00\02\00\t\0b\00\00\00\t\00\0b\00\00\0b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0c\00\00\00\00\00\00\00\00\00\00\00\0c\00\00\00\00\0c\00\00\00\00\t\0c\00\00\00\00\00\0c\00\00\0c\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0e\00\00\00\00\00\00\00\00\00\00\00\0d\00\00\00\04\0d\00\00\00\00\t\0e\00\00\00\00\00\0e\00\00\0e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\00\00\00\00\0f\00\00\00\00\0f\00\00\00\00\t\10\00\00\00\00\00\10\00\00\10\00\00\12\00\00\00\12\12\12\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\12\00\00\00\12\12\12\00\00\00\00\00\00\t\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0b\00\00\00\00\00\00\00\00\00\00\00\n\00\00\00\00\n\00\00\00\00\t\0b\00\00\00\00\00\0b\00\00\0b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0c\00\00\00\00\00\00\00\00\00\00\00\0c\00\00\00\00\0c\00\00\00\00\t\0c\00\00\00\00\00\0c\00\00\0c\00\000123456789ABCDEF-0X+0X 0X-0x+0x 0x\00inf\00INF\00nan\00NAN\00.\00")
(data (i32.const 1600) "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00")
(elem (i32.const 1) $foo $bar $tabled)
(global $global$0 (mut i32) (i32.const 5243904))
(export "main" (func $main))
(export "other" (func $other))
(export "__growWasmMemory" (func $__growWasmMemory))
(export "exported" (func $exported))
(export "sub-zero" (func $sub-zero))
(export "select" (func $select))
(export "bools" (func $bools))
(func $main
(drop (call $syscall$6 (i32.const 1) (i32.const 2)))
(drop (call $syscall$54 (i32.const 3) (i32.const 4)))
(call_indirect (type $0)
(i32.load offset=1030
(i32.const 0)
)
)
(drop (call $internal (i32.const 1)))
(drop (call $tabled (i32.const 1)))
(drop (call $exported (i32.const 1)))
)
(func $other
(call $main)
)
(func $foo
(unreachable)
)
(func $bar
(drop
(i32.load8_u
(i32.const 128)
)
)
(drop
(i32.load8_s
(i32.const 128)
)
)
(drop
(i32.load16_u
(i32.const 128)
)
)
(drop
(i32.load16_s
(i32.const 128)
)
)
(i32.store
(i32.const 16)
(i32.add (i32.const 1) (i32.const 2))
)
(f32.store
(i32.const 16)
(f32.add (f32.const 3) (f32.const 4))
)
(f64.store
(i32.const 16)
(f64.add (f64.const 5) (f64.const 6))
)
(i32.store8
(i32.const 16)
(i32.add (i32.const 7) (i32.const 8))
)
(i32.store16
(i32.const 16)
(i32.add (i32.const 9) (i32.const 10))
)
(if (i32.eq (i32.load (i32.const 100)) (i32.const 1))
(then
(call $bar)
)
)
(if (i32.lt_s (i32.load (i32.const 104)) (i32.const 2))
(then
(call $bar)
)
)
(if (i32.lt_u (i32.load (i32.const 108)) (i32.const 3))
(then
(call $bar)
)
)
(if (i32.eq (i32.load16_s (i32.const 112)) (i32.const 1))
(then
(call $bar)
)
)
(if (i32.lt_s (i32.load16_s (i32.const 116)) (i32.const 2))
(then
(call $bar)
)
)
(if (i32.lt_s (i32.load16_u (i32.const 120)) (i32.const 2))
(then
(call $bar)
)
)
(if (i32.lt_u (i32.load16_s (i32.const 124)) (i32.const 3))
(then
(call $bar)
)
)
(if (i32.lt_u (i32.load16_u (i32.const 128)) (i32.const 3))
(then
(call $bar)
)
)
(if (i32.lt_s (i32.load8_s (i32.const 132)) (i32.const 2))
(then
(call $bar)
)
)
(if (i32.lt_s (i32.load8_u (i32.const 136)) (i32.const 2))
(then
(call $bar)
)
)
(if (i32.lt_u (i32.load8_s (i32.const 140)) (i32.const 3))
(then
(call $bar)
)
)
(if (i32.lt_u (i32.load8_u (i32.const 144)) (i32.const 3))
(then
(call $bar)
)
)
(if (i32.shr_u (call $bools (i32.const 314159)) (i32.const 7))
(then
(call $bar)
)
)
(if (i32.shr_s (call $bools (i32.const 314159)) (i32.const 8))
(then
(call $bar)
)
)
(if (i32.trunc_f32_u (call $getf32))
(then
(call $bar)
)
)
(if (i32.trunc_f32_s (call $getf32))
(then
(call $bar)
)
)
(if (i32.trunc_f64_u (call $getf64))
(then
(call $bar)
)
)
(if (i32.trunc_f64_s (call $getf64))
(then
(call $bar)
)
)
(if
(i32.add
(i32.add
(call $geti32)
(call $geti32)
)
(call $geti32)
)
(then
(call $bar)
)
)
(if
(i32.add
(call $geti32)
(i32.add
(call $geti32)
(call $geti32)
)
)
(then
(call $bar)
)
)
(if
(i32.add
(i32.add
(call $geti32)
(call $geti32)
)
(i32.add
(call $geti32)
(call $geti32)
)
)
(then
(call $bar)
)
)
(if
(i32.add
(i32.add
(i32.add
(call $geti32)
(call $geti32)
)
(i32.add
(call $geti32)
(call $geti32)
)
)
(i32.add
(i32.add
(call $geti32)
(call $geti32)
)
(i32.add
(call $geti32)
(call $geti32)
)
)
)
(then
(call $bar)
)
)
)
(func $geti32 (result i32)
(call $geti32)
)
(func $getf32 (result f32)
(call $getf32)
)
(func $getf64 (result f64)
(call $getf64)
)
(func $__growWasmMemory (param $0 i32) (result i32)
(memory.grow
(local.get $0)
)
)
(func $internal (param $x i32) (result i32)
(local.get $x)
)
(func $tabled (param $x i32) (result i32)
(local.get $x)
)
(func $exported (param $x i32) (result i32)
(local.get $x)
)
(func $sub-zero (param $x i32) (result i32)
(i32.sub (local.get $x) (i32.const -5))
)
(func $select (param $x i32) (result i32)
(select
(local.get $x)
(i32.load (i32.const 16)) ;; we can ignore this implicit trap, no side effects
(local.get $x)
)
)
(func $bools (param $x i32) (result i32)
(drop (call $bools (i32.and (i32.load8_u (i32.const 0)) (i32.const 1))))
(drop (call $bools (i32.and (i32.load8_s (i32.const 0)) (i32.const 1))))
(drop (call $bools (i32.and (i32.load16_u (i32.const 0)) (i32.const 1))))
(drop (call $bools (i32.and (i32.load16_s (i32.const 0)) (i32.const 1))))
(drop (call $bools (i32.and (i32.load (i32.const 0)) (i32.const 1))))
(drop (call $bools (i32.and (i32.load8_u (i32.const 0)) (i32.const 2))))
(drop (call $bools (i32.xor (local.get $x) (i32.const 1))))
(if
(i32.xor (local.get $x) (i32.const 1))
(then
(drop (call $bools (i32.const 2)))
)
)
(if
(i32.xor (local.get $x) (i32.const 2))
(then
(drop (call $bools (i32.const 2)))
)
)
(drop (call $bools (i32.eqz (i32.xor (local.get $x) (i32.const 1)))))
(unreachable)
)
)