summaryrefslogtreecommitdiff
path: root/test/lit/merge/names.wat
blob: 24b1dab0d99b38e2e492269e96da56c3e42ceaa1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
;; NOTE: Assertions have been generated by update_lit_checks.py --all-items and should not be edited.
;; RUN: wasm-merge -g %s first %s.second second -all -o %t.wasm
;; RUN: wasm-opt -all %t.wasm -S -o - | filecheck %s
(module
   ;; CHECK:      (type $0 (func))

   ;; CHECK:      (type $t (struct (field $a i32) (field $b i32)))

   ;; CHECK:      (type $2 (func (param (ref $t))))

   ;; CHECK:      (type $u (struct (field $c i64) (field $d i32)))

   ;; CHECK:      (type $4 (func (param (ref $u))))

   ;; CHECK:      (global $global$0 i32 (i32.const 0))

   ;; CHECK:      (global $glob2 i32 (i32.const 0))

   ;; CHECK:      (global $global$2 i32 (i32.const 0))

   ;; CHECK:      (global $glob0 i32 (i32.const 0))

   ;; CHECK:      (memory $mem0 0)

   ;; CHECK:      (memory $1 0)

   ;; CHECK:      (memory $mem2 0)

   ;; CHECK:      (memory $3 0)

   ;; CHECK:      (table $table0 1 funcref)

   ;; CHECK:      (table $1 1 funcref)

   ;; CHECK:      (table $table2 1 funcref)

   ;; CHECK:      (table $3 1 funcref)

   ;; CHECK:      (tag $tag0)

   ;; CHECK:      (tag $tag$1)

   ;; CHECK:      (tag $tag2)

   ;; CHECK:      (tag $tag$3)

   ;; CHECK:      (export "m0" (memory $mem0))

   ;; CHECK:      (export "m1" (memory $1))

   ;; CHECK:      (export "f0" (func $func0))

   ;; CHECK:      (export "f1" (func $1))

   ;; CHECK:      (export "t0" (table $table0))

   ;; CHECK:      (export "t1" (table $1))

   ;; CHECK:      (export "g0" (global $glob0))

   ;; CHECK:      (export "g1" (global $global$2))

   ;; CHECK:      (export "tag0" (tag $tag0))

   ;; CHECK:      (export "tag1" (tag $tag$1))

   ;; CHECK:      (export "func" (func $2))

   ;; CHECK:      (export "m2" (memory $mem2))

   ;; CHECK:      (export "m3" (memory $3))

   ;; CHECK:      (export "f2" (func $func2))

   ;; CHECK:      (export "f3" (func $4))

   ;; CHECK:      (export "t2" (table $table2))

   ;; CHECK:      (export "t3" (table $3))

   ;; CHECK:      (export "g2" (global $glob2))

   ;; CHECK:      (export "g3" (global $global$0))

   ;; CHECK:      (export "tag2" (tag $tag2))

   ;; CHECK:      (export "tag3" (tag $tag$3))

   ;; CHECK:      (export "func2" (func $5))

   ;; CHECK:      (func $func0 (type $0)
   ;; CHECK-NEXT:  (nop)
   ;; CHECK-NEXT: )
   (func $func0 (export "f0"))
   (func (export "f1"))

   (table $table0 (export "t0") 1 funcref)
   (table (export "t1") 1 funcref)

   (global $glob0 (export g0) i32 (i32.const 0))
   (global (export g1) i32 (i32.const 0))

   (memory $mem0 (export "m0") 0)
   (memory (export "m1") 0)

   (elem $elem0 func)
   (elem func)

   (data $data0 "")
   (data "")

   (tag $tag0 (export tag0))
   (tag (export tag1))

   (type $t (struct (field $a i32) (field $b i32)))

   (func (export "func") (param $x (ref $t)))
)
;; CHECK:      (func $1 (type $0)
;; CHECK-NEXT:  (nop)
;; CHECK-NEXT: )

;; CHECK:      (func $2 (type $2) (param $x (ref $t))
;; CHECK-NEXT:  (nop)
;; CHECK-NEXT: )

;; CHECK:      (func $func2 (type $0)
;; CHECK-NEXT:  (nop)
;; CHECK-NEXT: )

;; CHECK:      (func $4 (type $0)
;; CHECK-NEXT:  (nop)
;; CHECK-NEXT: )

;; CHECK:      (func $5 (type $4) (param $0 (ref $u))
;; CHECK-NEXT:  (nop)
;; CHECK-NEXT: )