;;; TOOL: run-roundtrip ;;; ARGS: --stdout --fold-exprs --enable-function-references (module (func $i32_r_i32 (type $i_i) i32.const 1) (func $i32_f32_r_f32 (type $if_f) f32.const 0) (func $f32_f32_f32_f32_r_v (type $ffff)) (elem declare funcref (ref.func $i32_r_i32) (ref.func $i32_f32_r_f32) (ref.func $f32_f32_f32_f32_r_v)) (func $fold-callref (result i32) i32.const 1 ref.func $i32_r_i32 call_ref $i_i drop i32.const 2 ref.func $i32_r_i32 call_ref $i_i) (func $fold-call-2 f32.const 0 f32.const 1 f32.const 2 i32.const 3 f32.const 4 ref.func $i32_f32_r_f32 call_ref $if_f ref.func $f32_f32_f32_f32_r_v call_ref $ffff) (type $i_i (func (param i32) (result i32))) (type $if_f (func (param i32 f32) (result f32))) (type $ffff (func (param f32 f32 f32 f32))) ) (;; STDOUT ;;; (module (type (;0;) (func (param i32) (result i32))) (type (;1;) (func (param i32 f32) (result f32))) (type (;2;) (func (param f32 f32 f32 f32))) (type (;3;) (func (result i32))) (type (;4;) (func)) (func (;0;) (type 0) (param i32) (result i32) (i32.const 1)) (func (;1;) (type 1) (param i32 f32) (result f32) (f32.const 0x0p+0 (;=0;))) (func (;2;) (type 2) (param f32 f32 f32 f32)) (func (;3;) (type 3) (result i32) (drop (call_ref 0 (i32.const 1) (ref.func 0))) (call_ref 0 (i32.const 2) (ref.func 0))) (func (;4;) (type 4) (call_ref 2 (f32.const 0x0p+0 (;=0;)) (f32.const 0x1p+0 (;=1;)) (f32.const 0x1p+1 (;=2;)) (call_ref 1 (i32.const 3) (f32.const 0x1p+2 (;=4;)) (ref.func 1)) (ref.func 2))) (elem (;0;) declare funcref (ref.func 0) (ref.func 1) (ref.func 2))) ;;; STDOUT ;;)