blob: bba5203e07ab613e8746c5449fff3f5fe330c762 [file] [log] [blame]
(module
(type $none_=>_i32 (func (result i32)))
(type $none_=>_none (func))
(type $f32_=>_none (func (param f32)))
(type $none_=>_f64 (func (result f64)))
(type $f64_f64_=>_f64 (func (param f64 f64) (result f64)))
(type $i32_i64_=>_none (func (param i32 i64)))
(type $i32_=>_i32 (func (param i32) (result i32)))
(type $f64_=>_i32 (func (param f64) (result i32)))
(type $none_=>_i64 (func (result i64)))
(type $f64_=>_f64 (func (param f64) (result f64)))
(import "env" "_emscripten_asm_const_vi" (func $_emscripten_asm_const_vi))
(import "asm2wasm" "f64-to-int" (func $f64-to-int (param f64) (result i32)))
(import "asm2wasm" "f64-rem" (func $f64-rem (param f64 f64) (result f64)))
(memory $0 4096 4096)
(data (i32.const 1026) "\14\00")
(table $0 10 funcref)
(elem (i32.const 0) $z $big_negative $z $z $w $w $importedDoubles $w $z $cneg)
(export "big_negative" (func $big_negative))
(func $big_negative (; 3 ;)
(local $temp f64)
(block $block0
(local.set $temp
(f64.const -2147483648)
)
(local.set $temp
(f64.const -2147483648)
)
(local.set $temp
(f64.const -21474836480)
)
(local.set $temp
(f64.const 0.039625)
)
(local.set $temp
(f64.const -0.039625)
)
)
)
(func $importedDoubles (; 4 ;) (result f64)
(local $temp f64)
(block $topmost (result f64)
(local.set $temp
(f64.add
(f64.add
(f64.add
(f64.load
(i32.const 8)
)
(f64.load
(i32.const 16)
)
)
(f64.neg
(f64.load
(i32.const 16)
)
)
)
(f64.neg
(f64.load
(i32.const 8)
)
)
)
)
(if
(i32.gt_s
(i32.load
(i32.const 24)
)
(i32.const 0)
)
(br $topmost
(f64.const -3.4)
)
)
(if
(f64.gt
(f64.load
(i32.const 32)
)
(f64.const 0)
)
(br $topmost
(f64.const 5.6)
)
)
(f64.const 1.2)
)
)
(func $doubleCompares (; 5 ;) (param $x f64) (param $y f64) (result f64)
(local $t f64)
(local $Int f64)
(local $Double i32)
(block $topmost (result f64)
(if
(f64.gt
(local.get $x)
(f64.const 0)
)
(br $topmost
(f64.const 1.2)
)
)
(if
(f64.gt
(local.get $Int)
(f64.const 0)
)
(br $topmost
(f64.const -3.4)
)
)
(if
(i32.gt_s
(local.get $Double)
(i32.const 0)
)
(br $topmost
(f64.const 5.6)
)
)
(if
(f64.lt
(local.get $x)
(local.get $y)
)
(br $topmost
(local.get $x)
)
)
(local.get $y)
)
)
(func $intOps (; 6 ;) (result i32)
(local $x i32)
(i32.eq
(local.get $x)
(i32.const 0)
)
)
(func $hexLiterals (; 7 ;)
(drop
(i32.add
(i32.add
(i32.const 0)
(i32.const 313249263)
)
(i32.const -19088752)
)
)
)
(func $conversions (; 8 ;)
(local $i i32)
(local $d f64)
(block $block0
(local.set $i
(call $f64-to-int
(local.get $d)
)
)
(local.set $d
(f64.convert_i32_s
(local.get $i)
)
)
(local.set $d
(f64.convert_i32_u
(i32.shr_u
(local.get $i)
(i32.const 0)
)
)
)
)
)
(func $seq (; 9 ;)
(local $J f64)
(local.set $J
(f64.sub
(block $block0 (result f64)
(drop
(f64.const 0.1)
)
(f64.const 5.1)
)
(block $block1 (result f64)
(drop
(f64.const 3.2)
)
(f64.const 4.2)
)
)
)
)
(func $switcher (; 10 ;) (param $x i32) (result i32)
(block $topmost (result i32)
(block $switch$0
(block $switch-default$3
(block $switch-case$2
(block $switch-case$1
(br_table $switch-case$1 $switch-case$2 $switch-default$3
(i32.sub
(local.get $x)
(i32.const 1)
)
)
)
(br $topmost
(i32.const 1)
)
)
(br $topmost
(i32.const 2)
)
)
(nop)
)
(block $switch$4
(block $switch-default$7
(block $switch-case$6
(block $switch-case$5
(br_table $switch-case$6 $switch-default$7 $switch-default$7 $switch-default$7 $switch-default$7 $switch-default$7 $switch-default$7 $switch-case$5 $switch-default$7
(i32.sub
(local.get $x)
(i32.const 5)
)
)
)
(br $topmost
(i32.const 121)
)
)
(br $topmost
(i32.const 51)
)
)
(nop)
)
(block $label$break$Lout
(block $switch-default$16
(block $switch-case$15
(block $switch-case$12
(block $switch-case$9
(block $switch-case$8
(br_table $switch-case$15 $switch-default$16 $switch-default$16 $switch-case$12 $switch-default$16 $switch-default$16 $switch-default$16 $switch-default$16 $switch-case$9 $switch-default$16 $switch-case$8 $switch-default$16
(i32.sub
(local.get $x)
(i32.const 2)
)
)
)
(br $label$break$Lout)
)
(br $label$break$Lout)
)
(block $while-out$10
(loop $while-in$11
(block $block1
(br $while-out$10)
(br $while-in$11)
)
)
(br $label$break$Lout)
)
)
(block $while-out$13
(loop $while-in$14
(block $block3
(br $label$break$Lout)
(br $while-in$14)
)
)
(br $label$break$Lout)
)
)
(nop)
)
(i32.const 0)
)
)
(func $blocker (; 11 ;)
(block $label$break$L
(br $label$break$L)
)
)
(func $frem (; 12 ;) (result f64)
(call $f64-rem
(f64.const 5.5)
(f64.const 1.2)
)
)
(func $big_uint_div_u (; 13 ;) (result i32)
(local $x i32)
(block $topmost (result i32)
(local.set $x
(i32.and
(i32.div_u
(i32.const -1)
(i32.const 2)
)
(i32.const -1)
)
)
(local.get $x)
)
)
(func $fr (; 14 ;) (param $x f32)
(local $y f32)
(local $z f64)
(block $block0
(drop
(f32.demote_f64
(local.get $z)
)
)
(drop
(local.get $y)
)
(drop
(f32.const 5)
)
(drop
(f32.const 0)
)
(drop
(f32.const 5)
)
(drop
(f32.const 0)
)
)
)
(func $negZero (; 15 ;) (result f64)
(f64.const -0)
)
(func $abs (; 16 ;)
(local $x i32)
(local $y f64)
(local $z f32)
(local $asm2wasm_i32_temp i32)
(block $block0
(local.set $x
(block $block1 (result i32)
(local.set $asm2wasm_i32_temp
(i32.const 0)
)
(select
(i32.sub
(i32.const 0)
(local.get $asm2wasm_i32_temp)
)
(local.get $asm2wasm_i32_temp)
(i32.lt_s
(local.get $asm2wasm_i32_temp)
(i32.const 0)
)
)
)
)
(local.set $y
(f64.abs
(f64.const 0)
)
)
(local.set $z
(f32.abs
(f32.const 0)
)
)
)
)
(func $neg (; 17 ;)
(local $x f32)
(block $block0
(local.set $x
(f32.neg
(local.get $x)
)
)
(call_indirect (type $f32_=>_none)
(local.get $x)
(i32.add
(i32.and
(i32.const 1)
(i32.const 7)
)
(i32.const 8)
)
)
)
)
(func $cneg (; 18 ;) (param $x f32)
(call_indirect (type $f32_=>_none)
(local.get $x)
(i32.add
(i32.and
(i32.const 1)
(i32.const 7)
)
(i32.const 8)
)
)
)
(func $___syscall_ret (; 19 ;)
(local $$0 i32)
(drop
(i32.gt_u
(i32.shr_u
(local.get $$0)
(i32.const 0)
)
(i32.const -4096)
)
)
)
(func $z (; 20 ;)
(nop)
)
(func $w (; 21 ;)
(nop)
)
(func $block_and_after (; 22 ;) (result i32)
(block $waka
(drop
(i32.const 1)
)
(br $waka)
)
(i32.const 0)
)
(func $loop-roundtrip (; 23 ;) (param $0 f64) (result f64)
(loop $loop-in1 (result f64)
(drop
(local.get $0)
)
(local.get $0)
)
)
(func $big-i64 (; 24 ;) (result i64)
(i64.const -9218868437227405313)
)
(func $i64-store32 (; 25 ;) (param $0 i32) (param $1 i64)
(i64.store32
(local.get $0)
(local.get $1)
)
)
(func $return-unreachable (; 26 ;) (result i32)
(return
(i32.const 1)
)
)
(func $unreachable-block (; 27 ;) (result i32)
(f64.abs
(block $block
(drop
(i32.const 1)
)
(return
(i32.const 2)
)
)
)
)
(func $unreachable-block-toplevel (; 28 ;) (result i32)
(block $block
(drop
(i32.const 1)
)
(return
(i32.const 2)
)
)
)
(func $unreachable-block0 (; 29 ;) (result i32)
(f64.abs
(block $block
(return
(i32.const 2)
)
)
)
)
(func $unreachable-block0-toplevel (; 30 ;) (result i32)
(block $block
(return
(i32.const 2)
)
)
)
(func $unreachable-block-with-br (; 31 ;) (result i32)
(block $block
(drop
(i32.const 1)
)
(br $block)
)
(i32.const 1)
)
(func $unreachable-if (; 32 ;) (result i32)
(f64.abs
(if
(i32.const 3)
(return
(i32.const 2)
)
(return
(i32.const 1)
)
)
)
)
(func $unreachable-if-toplevel (; 33 ;) (result i32)
(if
(i32.const 3)
(return
(i32.const 2)
)
(return
(i32.const 1)
)
)
)
(func $unreachable-loop (; 34 ;) (result i32)
(f64.abs
(loop $loop-in
(nop)
(return
(i32.const 1)
)
)
)
)
(func $unreachable-loop0 (; 35 ;) (result i32)
(f64.abs
(loop $loop-in
(return
(i32.const 1)
)
)
)
)
(func $unreachable-loop-toplevel (; 36 ;) (result i32)
(loop $loop-in
(nop)
(return
(i32.const 1)
)
)
)
(func $unreachable-loop0-toplevel (; 37 ;) (result i32)
(loop $loop-in
(return
(i32.const 1)
)
)
)
(func $unreachable-ifs (; 38 ;)
(if
(unreachable)
(nop)
)
(if
(unreachable)
(unreachable)
)
(if
(unreachable)
(nop)
(nop)
)
(if
(unreachable)
(unreachable)
(nop)
)
(if
(unreachable)
(nop)
(unreachable)
)
(if
(unreachable)
(unreachable)
(unreachable)
)
(if
(i32.const 1)
(unreachable)
(nop)
)
(if
(i32.const 1)
(nop)
(unreachable)
)
(if
(i32.const 1)
(unreachable)
(unreachable)
)
)
(func $unreachable-if-arm (; 39 ;)
(if
(i32.const 1)
(block $block
(nop)
)
(block $block12
(unreachable)
(drop
(i32.const 1)
)
)
)
)
)