cyb/wysm/crates/wasmi/benches/wat/trunc_f2i.wat

(module
    (func (export "trunc_f2i") (param $n i32) (param $input32 f32) (param $input64 f64) (result)
        (local $i i32)
        (block $exit
            (if
                (i32.le_u
                    (local.get $n)
                    (i32.const 0)
                )
                (then (unreachable)) ;; trap if $n <= 0
            )
            (local.set $i (local.get $n)) ;; i = n
            (loop $continue
                (drop
                    (i32.trunc_f32_s (local.get $input32)) ;; <- under test
                )
                (drop
                    (i32.trunc_f32_u (local.get $input32)) ;; <- under test
                )
                (drop
                    (i64.trunc_f32_s (local.get $input32)) ;; <- under test
                )
                (drop
                    (i64.trunc_f64_u (local.get $input64)) ;; <- under test
                )
                (drop
                    (i32.trunc_f64_s (local.get $input64)) ;; <- under test
                )
                (drop
                    (i32.trunc_f64_u (local.get $input64)) ;; <- under test
                )
                (drop
                    (i64.trunc_f64_s (local.get $input64)) ;; <- under test
                )
                (drop
                    (i64.trunc_f64_u (local.get $input64)) ;; <- under test
                )
                (local.set $i ;; i -= 1
                    (i32.sub (local.get $i) (i32.const 1))
                )
                (br_if $continue (local.get $i)) ;; continue if i != 0
            )
        )
    )
)

Graph