1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
|
(module
(import "env" "memory" (memory $memory 256 256))
(data (global.get $__memory_base) "two_sides.asm.js")
(import "env" "__memory_base" (global $__memory_base i32))
(export "_test" (func $_test))
(func $f64-to-int (; 0 ;) (; has Stack IR ;) (param $0 f64) (result i32)
(if (result i32)
(f64.ne
(local.get $0)
(local.get $0)
)
(i32.const -2147483648)
(if (result i32)
(f64.ge
(local.get $0)
(f64.const 2147483648)
)
(i32.const -2147483648)
(if (result i32)
(f64.le
(local.get $0)
(f64.const -2147483649)
)
(i32.const -2147483648)
(i32.trunc_f64_s
(local.get $0)
)
)
)
)
)
(func $_test (; 1 ;) (; has Stack IR ;) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32)
(local $5 f64)
(if (result i32)
(local.get $4)
(call $f64-to-int
(f64.mul
(f64.add
(f64.convert_i32_s
(local.get $2)
)
(local.tee $5
(f64.convert_i32_s
(i32.mul
(local.get $0)
(local.get $1)
)
)
)
)
(f64.add
(local.get $5)
(f64.convert_i32_s
(local.get $3)
)
)
)
)
(call $f64-to-int
(f64.mul
(f64.add
(f64.convert_i32_s
(local.get $2)
)
(local.tee $5
(f64.convert_i32_s
(i32.mul
(local.get $2)
(local.get $3)
)
)
)
)
(f64.add
(f64.convert_i32_s
(local.get $3)
)
(local.get $5)
)
)
)
)
)
)
|