blob: 2a7522e9f667a498c2550be98a4f02e2a63ff10d [file] [log] [blame] [edit]
(module
(type $i32_i32_i32_i32_i32_=>_i32 (func (param i32 i32 i32 i32 i32) (result i32)))
(type $f64_=>_i32 (func (param f64) (result i32)))
(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)
)
)
)
)
)
)