blob: f9eda9a7d596774324c87b9fd16653328f16433c [file] [edit]
;; NOTE: Assertions have been generated by update_lit_checks.py --all-items and should not be edited.
;; RUN: wasm-split -all -g --multi-split %s --manifest %s.manifest --out-prefix=%t -o %t.wasm
;; RUN: wasm-dis %t.wasm | filecheck %s --check-prefix PRIMARY
;; RUN: wasm-dis %t1.wasm | filecheck %s --check-prefix SECONDARY1
;; RUN: wasm-dis %t2.wasm | filecheck %s --check-prefix SECONDARY2
;; Because global $e is used in both module1 ($split1) and module2 ($split2), $e
;; will be exported / imported, but we don't need to export $f.
(module
;; PRIMARY: (type $0 (func))
;; PRIMARY: (global $f i32 (i32.const 42))
(global $f i32 (i32.const 42))
;; PRIMARY: (global $e i32 (global.get $f))
(global $e i32 (global.get $f))
;; PRIMARY: (export "global" (global $e))
;; PRIMARY: (func $keep
;; PRIMARY-NEXT: (nop)
;; PRIMARY-NEXT: )
(func $keep
(nop)
)
;; SECONDARY1: (type $0 (func))
;; SECONDARY1: (import "primary" "global" (global $e i32))
;; SECONDARY1: (func $split1
;; SECONDARY1-NEXT: (drop
;; SECONDARY1-NEXT: (global.get $e)
;; SECONDARY1-NEXT: )
;; SECONDARY1-NEXT: )
(func $split1
(drop (global.get $e))
)
;; SECONDARY2: (type $0 (func))
;; SECONDARY2: (import "primary" "global" (global $e i32))
;; SECONDARY2: (func $split2
;; SECONDARY2-NEXT: (drop
;; SECONDARY2-NEXT: (global.get $e)
;; SECONDARY2-NEXT: )
;; SECONDARY2-NEXT: )
(func $split2
(drop (global.get $e))
)
)