blob: 479256db508e9a04ec380e8b30ce5e35c319caa5 [file] [log] [blame] [edit]
;; RUN: wasm-split -all --multi-split %s --manifest %S/multi-split.wast.manifest --out-prefix=%t --symbolmap -o %t.wasm
;; RUN: filecheck %s --check-prefix PRIMARY-MAP < %t.wasm.symbols
;; RUN: filecheck %s --check-prefix MOD1-MAP < %t1.wasm.symbols
;; RUN: filecheck %s --check-prefix MOD2-MAP < %t2.wasm.symbols
;; RUN: filecheck %s --check-prefix MOD3-MAP < %t3.wasm.symbols
;; PRIMARY-MAP: 0:placeholder_0
;; PRIMARY-MAP: 1:placeholder_1
;; PRIMARY-MAP: 2:placeholder_2
;; PRIMARY-MAP: 3:trampoline_B
;; PRIMARY-MAP: 4:trampoline_C
;; PRIMARY-MAP: 5:trampoline_A
;; MOD1-MAP: 0:trampoline_B
;; MOD1-MAP: 1:trampoline_C
;; MOD1-MAP: 2:A
;; MOD2-MAP: 0:trampoline_A
;; MOD2-MAP: 1:trampoline_C
;; MOD2-MAP: 2:B
;; MOD3-MAP: 0:trampoline_A
;; MOD3-MAP: 1:trampoline_B
;; MOD3-MAP: 2:C
(module
(type $ret-i32 (func (result i32)))
(type $ret-i64 (func (result i64)))
(type $ret-f32 (func (result f32)))
(func $A (type $ret-i32) (result i32)
(drop
(call_ref $ret-i32
(ref.func $A)
)
)
(drop
(call_ref $ret-i64
(ref.func $B)
)
)
(drop
(call_ref $ret-f32
(ref.func $C)
)
)
(i32.const 0)
)
(func $B (type $ret-i64) (result i64)
(drop
(call_ref $ret-i32
(ref.func $A)
)
)
(drop
(call_ref $ret-i64
(ref.func $B)
)
)
(drop
(call_ref $ret-f32
(ref.func $C)
)
)
(i64.const 0)
)
(func $C (type $ret-f32) (result f32)
(drop
(call_ref $ret-i32
(ref.func $A)
)
)
(drop
(call_ref $ret-i64
(ref.func $B)
)
)
(drop
(call_ref $ret-f32
(ref.func $C)
)
)
(f32.const 0)
)
)