blob: b966a4164c4bfc5be06fbc2eaec87c8369cc65fa [file] [log] [blame]
(module
(global $hangLimit (mut i32) (i32.const 100))
(memory $0 1 1)
(export "func_0" (func $func_0))
(export "func_6" (func $func_6))
(export "hangLimitInitializer" (func $hangLimitInitializer))
(func $func_0 (result i32)
(local $0 f32)
(local $1 i64)
(local $2 f32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(i32.const -11)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(loop $label$0
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(i32.const 26963)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(i64.trunc_u/f64
(drop
(loop $label$3
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(i32.const 32767)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(return
(i32.const -73)
)
)
)
)
)
)
(func $func_1 (result f64)
(local $0 i32)
(local $1 f64)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(f64.const 9223372036854775808)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$0 (result f64)
(drop
(if (result i64)
(select
(get_local $0)
(i32.const 84414006)
(select
(i32.const 32767)
(i32.const -1)
(loop $label$1 (result i32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(get_local $1)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$2 (result i32)
(return
(get_local $1)
)
)
)
)
)
(if (result i64)
(i32.eqz
(loop $label$9 (result i32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(f64.const 19)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$10 (result i32)
(i32.load8_s offset=3
(i32.and
(tee_local $0
(tee_local $0
(select
(i32.load16_u offset=4 align=1
(i32.and
(select
(get_local $0)
(get_local $0)
(select
(i64.lt_s
(loop $label$12 (result i64)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(get_local $1)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(i64.const 32767)
)
(i64.const 251)
)
(i32.trunc_u/f64
(get_local $1)
)
(br_if $label$10
(i32.load16_u offset=3
(i32.and
(i32.const 20)
(i32.const 31)
)
)
(get_local $0)
)
)
)
(i32.const 31)
)
)
(loop $label$13 (result i32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(get_local $1)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$14 (result i32)
(return
(get_local $1)
)
)
)
(if (result i32)
(i32.eqz
(get_local $0)
)
(block $label$11 (result i32)
(get_local $0)
)
(i32.popcnt
(get_local $0)
)
)
)
)
)
(i32.const 31)
)
)
)
)
)
(block $label$15 (result i64)
(block $label$16 (result i64)
(select
(br_if $label$16
(i64.const 1)
(i32.eqz
(tee_local $0
(select
(get_local $0)
(get_local $0)
(get_local $0)
)
)
)
)
(loop $label$21 (result i64)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(get_local $1)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$22 (result i64)
(return
(get_local $1)
)
)
)
(loop $label$17 (result i32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(f64.const -9223372036854775808)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$18 (result i32)
(if
(i32.eqz
(select
(i32.const -128)
(i32.const -12)
(i32.const 1561467741)
)
)
(block $label$19
(nop)
)
(loop $label$20
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(f64.const -nan:0xfffffffffff83)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(set_local $0
(get_local $0)
)
)
)
(tee_local $0
(f32.lt
(call $deNan32
(f32.min
(f32.const 18446744073709551615)
(f32.const 11)
)
)
(call $deNan32
(select
(f32.const 2147483648)
(f32.const 18446744073709551615)
(get_local $0)
)
)
)
)
)
)
)
)
)
(select
(i64.load32_u offset=3 align=2
(i32.and
(i32.load16_u offset=4
(i32.and
(tee_local $0
(if (result i32)
(i32.trunc_u/f64
(get_local $1)
)
(block $label$27 (result i32)
(get_local $0)
)
(block $label$28 (result i32)
(get_local $0)
)
)
)
(i32.const 31)
)
)
(i32.const 31)
)
)
(i64.const 80)
(i32.trunc_s/f32
(call $deNan32
(f32.copysign
(f32.const 1.8061622339155704e-31)
(if (result f32)
(i32.eqz
(loop $label$23 (result i32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(f64.const 2.1384722118162242e-260)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(i32.wrap/i64
(if (result i64)
(i32.eqz
(get_local $0)
)
(i64.const 18752)
(select
(i64.const 650785547958815753)
(i64.const 8463519829359949880)
(block $label$24 (result i32)
(select
(get_local $0)
(i32.const 65535)
(get_local $0)
)
)
)
)
)
)
)
(block $label$25 (result f32)
(f32.const 14385)
)
(f32.const 4.2612939233197215e-37)
)
)
)
)
)
)
(block $label$29 (result i64)
(block $label$30 (result i64)
(return
(get_local $1)
)
)
)
)
)
(if
(block $label$31 (result i32)
(block $label$32
(if
(block $label$33 (result i32)
(loop $label$34 (result i32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(f64.const -nan:0xffffffffffff8)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(if (result i32)
(i32.eqz
(if (result i32)
(block $label$35 (result i32)
(return
(get_local $1)
)
)
(i32.trunc_s/f64
(call $deNan64
(f64.convert_u/i32
(select
(get_local $0)
(if (result i32)
(i32.eqz
(block $label$36 (result i32)
(get_local $0)
)
)
(i64.gt_u
(i64.const 155730402379)
(i64.const 15)
)
(i32.const -2147483648)
)
(get_local $0)
)
)
)
)
(block $label$37 (result i32)
(drop
(f64.const 65483)
)
(select
(get_local $0)
(i32.trunc_s/f64
(block $label$38 (result f64)
(loop $label$39 (result f64)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(get_local $1)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(call $deNan64
(f64.add
(get_local $1)
(get_local $1)
)
)
)
)
)
(i32.const 1751457892)
)
)
)
)
(i32.reinterpret/f32
(f32.const 9223372036854775808)
)
(get_local $0)
)
)
)
(nop)
(block $label$40
(set_local $1
(call $deNan64
(select
(f64.load offset=22 align=4
(i32.and
(if (result i32)
(i32.const -124)
(block $label$43 (result i32)
(br $label$32)
)
(block $label$44 (result i32)
(get_local $0)
)
)
(i32.const 31)
)
)
(call $deNan64
(f64.copysign
(call $deNan64
(f64.reinterpret/i64
(i64.ctz
(i64.trunc_u/f32
(f32.const 65525)
)
)
)
)
(get_local $1)
)
)
(loop $label$41 (result i32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(f64.const 9)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$42 (result i32)
(br $label$40)
)
)
)
)
)
)
)
)
(return
(get_local $1)
)
)
(block $label$45
(block $label$46
(br_if $label$45
(tee_local $0
(i32.trunc_s/f64
(loop $label$47 (result f64)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(get_local $1)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$48 (result f64)
(br $label$45)
)
)
)
)
)
)
)
(block $label$49
(nop)
(br_if $label$49
(get_local $0)
)
)
)
(if (result f64)
(i32.eqz
(i32.trunc_u/f32
(f32.const 2.0658355161339533e-21)
)
)
(call $deNan64
(select
(get_local $1)
(if (result f64)
(i32.eqz
(get_local $0)
)
(block $label$50 (result f64)
(return
(get_local $1)
)
)
(block $label$51 (result f64)
(return
(get_local $1)
)
)
)
(get_local $0)
)
)
(block $label$52 (result f64)
(if
(i32.reinterpret/f32
(f32.const -nan:0x7fffb9)
)
(nop)
(drop
(f64.const 8.308760937752171e-246)
)
)
(drop
(loop $label$53 (result i64)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(get_local $1)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$54 (result i64)
(i64.const -48)
)
)
)
(return
(f64.const 65520)
)
)
)
)
)
(func $func_2 (param $0 f32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$0
(if
(i32.eqz
(if (result i32)
(call $func_0)
(block $label$1 (result i32)
(block $label$2
(loop $label$3
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$4
(nop)
)
)
)
(if (result i32)
(i32.eqz
(if (result i32)
(i32.load8_s offset=4
(i32.and
(if (result i32)
(i32.eqz
(call $func_0)
)
(block $label$5 (result i32)
(br $label$0)
)
(block $label$6 (result i32)
(br $label$0)
)
)
(i32.const 31)
)
)
(i32.const 359492883)
(call $func_0)
)
)
(block $label$7 (result i32)
(br $label$0)
)
(block $label$8 (result i32)
(i32.const 22536)
)
)
)
(block $label$9 (result i32)
(nop)
(br_if $label$0
(i32.eqz
(block $label$10 (result i32)
(br $label$0)
)
)
)
(br $label$0)
)
)
)
(if
(i32.const 65441)
(nop)
(block $label$11
(loop $label$12
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$13
(nop)
)
)
)
)
(block $label$14
(if
(i32.eqz
(call $func_0)
)
(block $label$15
(loop $label$16
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$17
(block $label$18
(loop $label$19
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(nop)
)
)
)
)
)
(block $label$20
(loop $label$21
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(if
(i32.trunc_u/f64
(call $deNan64
(f64.convert_u/i32
(i32.clz
(call $func_0)
)
)
)
)
(nop)
(drop
(if (result i64)
(i32.eqz
(loop $label$22 (result i32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$23 (result i32)
(select
(i32.const 2113936401)
(i32.const 0)
(select
(i32.const 2147483647)
(i32.const 1297751887)
(i32.const 5191)
)
)
)
)
)
(block $label$24 (result i64)
(br $label$0)
)
(block $label$25 (result i64)
(loop $label$26 (result i64)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$27 (result i64)
(i64.reinterpret/f64
(f64.const -nan:0xfffffffffffb7)
)
)
)
)
)
)
)
)
(drop
(call $func_1)
)
(block $label$28
(if
(i32.const 18500)
(nop)
(if
(i32.eqz
(i32.const -122)
)
(block $label$29
(set_local $0
(loop $label$30 (result f32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(f32.load offset=22 align=2
(i32.and
(block $label$31 (result i32)
(i64.eqz
(i64.const -2147483648)
)
)
(i32.const 31)
)
)
)
)
)
(f32.store offset=4 align=1
(i32.and
(loop $label$32 (result i32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(i32.wrap/i64
(i64.const -125)
)
)
(i32.const 31)
)
(f32.load offset=4 align=1
(i32.and
(i32.const 23)
(i32.const 31)
)
)
)
)
)
(br_if $label$0
(i32.eqz
(i32.const -128)
)
)
)
)
)
)
)
(br_if $label$0
(loop $label$33 (result i32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$34 (result i32)
(br $label$0)
)
)
)
)
)
(func $func_3 (param $0 f64) (param $1 f64) (param $2 f64) (result f32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(f32.const -nan:0x7fff97)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(call $deNan32
(f32.sqrt
(if (result f32)
(loop $label$0 (result i32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(f32.const 9223372036854775808)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$1 (result i32)
(return
(f32.const 9223372036854775808)
)
)
)
(block $label$2 (result f32)
(block $label$3 (result f32)
(f32.const 2147483648)
)
)
(f32.const 8764)
)
)
)
)
(func $func_4
(local $0 i64)
(local $1 i64)
(local $2 f32)
(local $3 f64)
(local $4 f64)
(local $5 f64)
(local $6 f32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(nop)
)
(func $func_5 (param $0 i64) (param $1 i64) (result f64)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(f64.const -100)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(f64.const 1)
)
(func $func_6 (result i32)
(local $0 f64)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(i32.const 2147483647)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(select
(select
(loop $label$1 (result i32)
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(i32.const 0)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$2 (result i32)
(i32.load offset=4
(br_if $label$2
(i32.const -76)
(i32.eqz
(i32.load8_s offset=4
(i32.and
(i32.load offset=22 align=1
(i32.and
(i32.const 92)
(i32.const 31)
)
)
(i32.const 31)
)
)
)
)
)
)
)
(block $label$3 (result i32)
(return
(i32.const 26)
)
)
(call $func_0)
)
(select
(block $label$9 (result i32)
(loop $label$10
(block
(if
(i32.eqz
(get_global $hangLimit)
)
(return
(i32.const 1)
)
)
(set_global $hangLimit
(i32.sub
(get_global $hangLimit)
(i32.const 1)
)
)
)
(block $label$11
(i32.store16 offset=2 align=1
(i32.const -91)
(i32.load16_s offset=4 align=1
(i32.ctz
(block $label$12 (result i32)
(select
(i32.load offset=4 align=2
(i32.and
(i32.const -113)
(i32.const 31)
)
)
(call $func_0)
(block $label$13 (result i32)
(return
(i32.const -32768)
)
)
)
)
)
)
)
)
)
(i32.const 255)
)
(i32.const 127)
(select
(if (result i32)
(block $label$4 (result i32)
(i32.load offset=22
(i32.and
(br_if $label$4
(i32.load16_u offset=2
(i32.and
(i32.const 226)
(i32.const 31)
)
)
(i32.eqz
(select
(block $label$5 (result i32)
(i32.const -32768)
)
(i32.const 354161438)
(i64.gt_s
(i64.const -18)
(i64.const 2835340575676513842)
)
)
)
)
(i32.const 31)
)
)
)
(i32.const -128)
(block $label$6 (result i32)
(return
(i32.const 65442)
)
)
)
(block $label$7 (result i32)
(i32.load offset=22 align=1
(i32.and
(block $label$8 (result i32)
(return
(i32.const 255)
)
)
(i32.const 31)
)
)
)
(i32.lt_s
(i32.const -20)
(i32.const -2147483648)
)
)
)
(block $label$0 (result i32)
(return
(i32.const -86)
)
)
)
)
(func $hangLimitInitializer
(set_global $hangLimit
(i32.const 100)
)
)
(func $deNan32 (param $0 f32) (result f32)
(if (result f32)
(f32.eq
(get_local $0)
(get_local $0)
)
(get_local $0)
(f32.const 0)
)
)
(func $deNan64 (param $0 f64) (result f64)
(if (result f64)
(f64.eq
(get_local $0)
(get_local $0)
)
(get_local $0)
(f64.const 0)
)
)
)