...
1;; Tests for store lane operations.
2
3
4(module
5 (memory 1)
6 (global $zero (mut v128) (v128.const i32x4 0 0 0 0))
7 (func (export "v128.store8_lane_0")
8 (param $address i32) (param $x v128) (result i64) (local $ret i64)
9 (v128.store8_lane 0 (local.get $address) (local.get $x))
10 (local.set $ret (i64.load (local.get $address)))
11 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
12 (func (export "v128.store8_lane_1")
13 (param $address i32) (param $x v128) (result i64) (local $ret i64)
14 (v128.store8_lane 1 (local.get $address) (local.get $x))
15 (local.set $ret (i64.load (local.get $address)))
16 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
17 (func (export "v128.store8_lane_2")
18 (param $address i32) (param $x v128) (result i64) (local $ret i64)
19 (v128.store8_lane 2 (local.get $address) (local.get $x))
20 (local.set $ret (i64.load (local.get $address)))
21 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
22 (func (export "v128.store8_lane_3")
23 (param $address i32) (param $x v128) (result i64) (local $ret i64)
24 (v128.store8_lane 3 (local.get $address) (local.get $x))
25 (local.set $ret (i64.load (local.get $address)))
26 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
27 (func (export "v128.store8_lane_4")
28 (param $address i32) (param $x v128) (result i64) (local $ret i64)
29 (v128.store8_lane 4 (local.get $address) (local.get $x))
30 (local.set $ret (i64.load (local.get $address)))
31 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
32 (func (export "v128.store8_lane_5")
33 (param $address i32) (param $x v128) (result i64) (local $ret i64)
34 (v128.store8_lane 5 (local.get $address) (local.get $x))
35 (local.set $ret (i64.load (local.get $address)))
36 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
37 (func (export "v128.store8_lane_6")
38 (param $address i32) (param $x v128) (result i64) (local $ret i64)
39 (v128.store8_lane 6 (local.get $address) (local.get $x))
40 (local.set $ret (i64.load (local.get $address)))
41 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
42 (func (export "v128.store8_lane_7")
43 (param $address i32) (param $x v128) (result i64) (local $ret i64)
44 (v128.store8_lane 7 (local.get $address) (local.get $x))
45 (local.set $ret (i64.load (local.get $address)))
46 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
47 (func (export "v128.store8_lane_8")
48 (param $address i32) (param $x v128) (result i64) (local $ret i64)
49 (v128.store8_lane 8 (local.get $address) (local.get $x))
50 (local.set $ret (i64.load (local.get $address)))
51 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
52 (func (export "v128.store8_lane_9")
53 (param $address i32) (param $x v128) (result i64) (local $ret i64)
54 (v128.store8_lane 9 (local.get $address) (local.get $x))
55 (local.set $ret (i64.load (local.get $address)))
56 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
57 (func (export "v128.store8_lane_10")
58 (param $address i32) (param $x v128) (result i64) (local $ret i64)
59 (v128.store8_lane 10 (local.get $address) (local.get $x))
60 (local.set $ret (i64.load (local.get $address)))
61 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
62 (func (export "v128.store8_lane_11")
63 (param $address i32) (param $x v128) (result i64) (local $ret i64)
64 (v128.store8_lane 11 (local.get $address) (local.get $x))
65 (local.set $ret (i64.load (local.get $address)))
66 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
67 (func (export "v128.store8_lane_12")
68 (param $address i32) (param $x v128) (result i64) (local $ret i64)
69 (v128.store8_lane 12 (local.get $address) (local.get $x))
70 (local.set $ret (i64.load (local.get $address)))
71 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
72 (func (export "v128.store8_lane_13")
73 (param $address i32) (param $x v128) (result i64) (local $ret i64)
74 (v128.store8_lane 13 (local.get $address) (local.get $x))
75 (local.set $ret (i64.load (local.get $address)))
76 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
77 (func (export "v128.store8_lane_14")
78 (param $address i32) (param $x v128) (result i64) (local $ret i64)
79 (v128.store8_lane 14 (local.get $address) (local.get $x))
80 (local.set $ret (i64.load (local.get $address)))
81 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
82 (func (export "v128.store8_lane_15")
83 (param $address i32) (param $x v128) (result i64) (local $ret i64)
84 (v128.store8_lane 15 (local.get $address) (local.get $x))
85 (local.set $ret (i64.load (local.get $address)))
86 (v128.store (local.get $address) (global.get $zero)) (local.get $ret))
87 (func (export "v128.store8_lane_0_offset_0")
88 (param $x v128) (result i64) (local $ret i64)
89 (v128.store8_lane offset=0 0 (i32.const 0) (local.get $x))
90 (local.set $ret (i64.load offset=0 (i32.const 0)))
91 (v128.store offset=0 (i32.const 0) (global.get $zero))
92 (local.get $ret))
93 (func (export "v128.store8_lane_1_offset_1")
94 (param $x v128) (result i64) (local $ret i64)
95 (v128.store8_lane offset=1 1 (i32.const 0) (local.get $x))
96 (local.set $ret (i64.load offset=1 (i32.const 0)))
97 (v128.store offset=1 (i32.const 0) (global.get $zero))
98 (local.get $ret))
99 (func (export "v128.store8_lane_2_offset_2")
100 (param $x v128) (result i64) (local $ret i64)
101 (v128.store8_lane offset=2 2 (i32.const 0) (local.get $x))
102 (local.set $ret (i64.load offset=2 (i32.const 0)))
103 (v128.store offset=2 (i32.const 0) (global.get $zero))
104 (local.get $ret))
105 (func (export "v128.store8_lane_3_offset_3")
106 (param $x v128) (result i64) (local $ret i64)
107 (v128.store8_lane offset=3 3 (i32.const 0) (local.get $x))
108 (local.set $ret (i64.load offset=3 (i32.const 0)))
109 (v128.store offset=3 (i32.const 0) (global.get $zero))
110 (local.get $ret))
111 (func (export "v128.store8_lane_4_offset_4")
112 (param $x v128) (result i64) (local $ret i64)
113 (v128.store8_lane offset=4 4 (i32.const 0) (local.get $x))
114 (local.set $ret (i64.load offset=4 (i32.const 0)))
115 (v128.store offset=4 (i32.const 0) (global.get $zero))
116 (local.get $ret))
117 (func (export "v128.store8_lane_5_offset_5")
118 (param $x v128) (result i64) (local $ret i64)
119 (v128.store8_lane offset=5 5 (i32.const 0) (local.get $x))
120 (local.set $ret (i64.load offset=5 (i32.const 0)))
121 (v128.store offset=5 (i32.const 0) (global.get $zero))
122 (local.get $ret))
123 (func (export "v128.store8_lane_6_offset_6")
124 (param $x v128) (result i64) (local $ret i64)
125 (v128.store8_lane offset=6 6 (i32.const 0) (local.get $x))
126 (local.set $ret (i64.load offset=6 (i32.const 0)))
127 (v128.store offset=6 (i32.const 0) (global.get $zero))
128 (local.get $ret))
129 (func (export "v128.store8_lane_7_offset_7")
130 (param $x v128) (result i64) (local $ret i64)
131 (v128.store8_lane offset=7 7 (i32.const 0) (local.get $x))
132 (local.set $ret (i64.load offset=7 (i32.const 0)))
133 (v128.store offset=7 (i32.const 0) (global.get $zero))
134 (local.get $ret))
135 (func (export "v128.store8_lane_8_offset_8")
136 (param $x v128) (result i64) (local $ret i64)
137 (v128.store8_lane offset=8 8 (i32.const 0) (local.get $x))
138 (local.set $ret (i64.load offset=8 (i32.const 0)))
139 (v128.store offset=8 (i32.const 0) (global.get $zero))
140 (local.get $ret))
141 (func (export "v128.store8_lane_9_offset_9")
142 (param $x v128) (result i64) (local $ret i64)
143 (v128.store8_lane offset=9 9 (i32.const 0) (local.get $x))
144 (local.set $ret (i64.load offset=9 (i32.const 0)))
145 (v128.store offset=9 (i32.const 0) (global.get $zero))
146 (local.get $ret))
147 (func (export "v128.store8_lane_10_offset_10")
148 (param $x v128) (result i64) (local $ret i64)
149 (v128.store8_lane offset=10 10 (i32.const 0) (local.get $x))
150 (local.set $ret (i64.load offset=10 (i32.const 0)))
151 (v128.store offset=10 (i32.const 0) (global.get $zero))
152 (local.get $ret))
153 (func (export "v128.store8_lane_11_offset_11")
154 (param $x v128) (result i64) (local $ret i64)
155 (v128.store8_lane offset=11 11 (i32.const 0) (local.get $x))
156 (local.set $ret (i64.load offset=11 (i32.const 0)))
157 (v128.store offset=11 (i32.const 0) (global.get $zero))
158 (local.get $ret))
159 (func (export "v128.store8_lane_12_offset_12")
160 (param $x v128) (result i64) (local $ret i64)
161 (v128.store8_lane offset=12 12 (i32.const 0) (local.get $x))
162 (local.set $ret (i64.load offset=12 (i32.const 0)))
163 (v128.store offset=12 (i32.const 0) (global.get $zero))
164 (local.get $ret))
165 (func (export "v128.store8_lane_13_offset_13")
166 (param $x v128) (result i64) (local $ret i64)
167 (v128.store8_lane offset=13 13 (i32.const 0) (local.get $x))
168 (local.set $ret (i64.load offset=13 (i32.const 0)))
169 (v128.store offset=13 (i32.const 0) (global.get $zero))
170 (local.get $ret))
171 (func (export "v128.store8_lane_14_offset_14")
172 (param $x v128) (result i64) (local $ret i64)
173 (v128.store8_lane offset=14 14 (i32.const 0) (local.get $x))
174 (local.set $ret (i64.load offset=14 (i32.const 0)))
175 (v128.store offset=14 (i32.const 0) (global.get $zero))
176 (local.get $ret))
177 (func (export "v128.store8_lane_15_offset_15")
178 (param $x v128) (result i64) (local $ret i64)
179 (v128.store8_lane offset=15 15 (i32.const 0) (local.get $x))
180 (local.set $ret (i64.load offset=15 (i32.const 0)))
181 (v128.store offset=15 (i32.const 0) (global.get $zero))
182 (local.get $ret))
183 (func (export "v128.store8_lane_0_align_1")
184 (param $address i32) (param $x v128) (result i64) (local $ret i64)
185 (v128.store8_lane align=1 0 (local.get $address) (local.get $x))
186 (local.set $ret (i64.load (local.get $address)))
187 (v128.store offset=0 (i32.const 0) (global.get $zero))
188 (local.get $ret))
189 (func (export "v128.store8_lane_1_align_1")
190 (param $address i32) (param $x v128) (result i64) (local $ret i64)
191 (v128.store8_lane align=1 1 (local.get $address) (local.get $x))
192 (local.set $ret (i64.load (local.get $address)))
193 (v128.store offset=1 (i32.const 0) (global.get $zero))
194 (local.get $ret))
195 (func (export "v128.store8_lane_2_align_1")
196 (param $address i32) (param $x v128) (result i64) (local $ret i64)
197 (v128.store8_lane align=1 2 (local.get $address) (local.get $x))
198 (local.set $ret (i64.load (local.get $address)))
199 (v128.store offset=2 (i32.const 0) (global.get $zero))
200 (local.get $ret))
201 (func (export "v128.store8_lane_3_align_1")
202 (param $address i32) (param $x v128) (result i64) (local $ret i64)
203 (v128.store8_lane align=1 3 (local.get $address) (local.get $x))
204 (local.set $ret (i64.load (local.get $address)))
205 (v128.store offset=3 (i32.const 0) (global.get $zero))
206 (local.get $ret))
207 (func (export "v128.store8_lane_4_align_1")
208 (param $address i32) (param $x v128) (result i64) (local $ret i64)
209 (v128.store8_lane align=1 4 (local.get $address) (local.get $x))
210 (local.set $ret (i64.load (local.get $address)))
211 (v128.store offset=4 (i32.const 0) (global.get $zero))
212 (local.get $ret))
213 (func (export "v128.store8_lane_5_align_1")
214 (param $address i32) (param $x v128) (result i64) (local $ret i64)
215 (v128.store8_lane align=1 5 (local.get $address) (local.get $x))
216 (local.set $ret (i64.load (local.get $address)))
217 (v128.store offset=5 (i32.const 0) (global.get $zero))
218 (local.get $ret))
219 (func (export "v128.store8_lane_6_align_1")
220 (param $address i32) (param $x v128) (result i64) (local $ret i64)
221 (v128.store8_lane align=1 6 (local.get $address) (local.get $x))
222 (local.set $ret (i64.load (local.get $address)))
223 (v128.store offset=6 (i32.const 0) (global.get $zero))
224 (local.get $ret))
225 (func (export "v128.store8_lane_7_align_1")
226 (param $address i32) (param $x v128) (result i64) (local $ret i64)
227 (v128.store8_lane align=1 7 (local.get $address) (local.get $x))
228 (local.set $ret (i64.load (local.get $address)))
229 (v128.store offset=7 (i32.const 0) (global.get $zero))
230 (local.get $ret))
231 (func (export "v128.store8_lane_8_align_1")
232 (param $address i32) (param $x v128) (result i64) (local $ret i64)
233 (v128.store8_lane align=1 8 (local.get $address) (local.get $x))
234 (local.set $ret (i64.load (local.get $address)))
235 (v128.store offset=8 (i32.const 0) (global.get $zero))
236 (local.get $ret))
237 (func (export "v128.store8_lane_9_align_1")
238 (param $address i32) (param $x v128) (result i64) (local $ret i64)
239 (v128.store8_lane align=1 9 (local.get $address) (local.get $x))
240 (local.set $ret (i64.load (local.get $address)))
241 (v128.store offset=9 (i32.const 0) (global.get $zero))
242 (local.get $ret))
243 (func (export "v128.store8_lane_10_align_1")
244 (param $address i32) (param $x v128) (result i64) (local $ret i64)
245 (v128.store8_lane align=1 10 (local.get $address) (local.get $x))
246 (local.set $ret (i64.load (local.get $address)))
247 (v128.store offset=10 (i32.const 0) (global.get $zero))
248 (local.get $ret))
249 (func (export "v128.store8_lane_11_align_1")
250 (param $address i32) (param $x v128) (result i64) (local $ret i64)
251 (v128.store8_lane align=1 11 (local.get $address) (local.get $x))
252 (local.set $ret (i64.load (local.get $address)))
253 (v128.store offset=11 (i32.const 0) (global.get $zero))
254 (local.get $ret))
255 (func (export "v128.store8_lane_12_align_1")
256 (param $address i32) (param $x v128) (result i64) (local $ret i64)
257 (v128.store8_lane align=1 12 (local.get $address) (local.get $x))
258 (local.set $ret (i64.load (local.get $address)))
259 (v128.store offset=12 (i32.const 0) (global.get $zero))
260 (local.get $ret))
261 (func (export "v128.store8_lane_13_align_1")
262 (param $address i32) (param $x v128) (result i64) (local $ret i64)
263 (v128.store8_lane align=1 13 (local.get $address) (local.get $x))
264 (local.set $ret (i64.load (local.get $address)))
265 (v128.store offset=13 (i32.const 0) (global.get $zero))
266 (local.get $ret))
267 (func (export "v128.store8_lane_14_align_1")
268 (param $address i32) (param $x v128) (result i64) (local $ret i64)
269 (v128.store8_lane align=1 14 (local.get $address) (local.get $x))
270 (local.set $ret (i64.load (local.get $address)))
271 (v128.store offset=14 (i32.const 0) (global.get $zero))
272 (local.get $ret))
273 (func (export "v128.store8_lane_15_align_1")
274 (param $address i32) (param $x v128) (result i64) (local $ret i64)
275 (v128.store8_lane align=1 15 (local.get $address) (local.get $x))
276 (local.set $ret (i64.load (local.get $address)))
277 (v128.store offset=15 (i32.const 0) (global.get $zero))
278 (local.get $ret))
279)
280
281(assert_return (invoke "v128.store8_lane_0" (i32.const 0)
282 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
283 (i64.const 0))
284(assert_return (invoke "v128.store8_lane_1" (i32.const 1)
285 (v128.const i8x16 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
286 (i64.const 1))
287(assert_return (invoke "v128.store8_lane_2" (i32.const 2)
288 (v128.const i8x16 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0))
289 (i64.const 2))
290(assert_return (invoke "v128.store8_lane_3" (i32.const 3)
291 (v128.const i8x16 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0))
292 (i64.const 3))
293(assert_return (invoke "v128.store8_lane_4" (i32.const 4)
294 (v128.const i8x16 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0))
295 (i64.const 4))
296(assert_return (invoke "v128.store8_lane_5" (i32.const 5)
297 (v128.const i8x16 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0))
298 (i64.const 5))
299(assert_return (invoke "v128.store8_lane_6" (i32.const 6)
300 (v128.const i8x16 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0))
301 (i64.const 6))
302(assert_return (invoke "v128.store8_lane_7" (i32.const 7)
303 (v128.const i8x16 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0))
304 (i64.const 7))
305(assert_return (invoke "v128.store8_lane_8" (i32.const 8)
306 (v128.const i8x16 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0))
307 (i64.const 8))
308(assert_return (invoke "v128.store8_lane_9" (i32.const 9)
309 (v128.const i8x16 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0))
310 (i64.const 9))
311(assert_return (invoke "v128.store8_lane_10" (i32.const 10)
312 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 10 0 0 0 0 0))
313 (i64.const 10))
314(assert_return (invoke "v128.store8_lane_11" (i32.const 11)
315 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 11 0 0 0 0))
316 (i64.const 11))
317(assert_return (invoke "v128.store8_lane_12" (i32.const 12)
318 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 12 0 0 0))
319 (i64.const 12))
320(assert_return (invoke "v128.store8_lane_13" (i32.const 13)
321 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 13 0 0))
322 (i64.const 13))
323(assert_return (invoke "v128.store8_lane_14" (i32.const 14)
324 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 14 0))
325 (i64.const 14))
326(assert_return (invoke "v128.store8_lane_15" (i32.const 15)
327 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 15))
328 (i64.const 15))
329(assert_return (invoke "v128.store8_lane_0_offset_0" (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
330 (i64.const 0))
331(assert_return (invoke "v128.store8_lane_1_offset_1" (v128.const i8x16 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
332 (i64.const 1))
333(assert_return (invoke "v128.store8_lane_2_offset_2" (v128.const i8x16 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0))
334 (i64.const 2))
335(assert_return (invoke "v128.store8_lane_3_offset_3" (v128.const i8x16 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0))
336 (i64.const 3))
337(assert_return (invoke "v128.store8_lane_4_offset_4" (v128.const i8x16 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0))
338 (i64.const 4))
339(assert_return (invoke "v128.store8_lane_5_offset_5" (v128.const i8x16 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0))
340 (i64.const 5))
341(assert_return (invoke "v128.store8_lane_6_offset_6" (v128.const i8x16 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0))
342 (i64.const 6))
343(assert_return (invoke "v128.store8_lane_7_offset_7" (v128.const i8x16 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0))
344 (i64.const 7))
345(assert_return (invoke "v128.store8_lane_8_offset_8" (v128.const i8x16 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0))
346 (i64.const 8))
347(assert_return (invoke "v128.store8_lane_9_offset_9" (v128.const i8x16 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0))
348 (i64.const 9))
349(assert_return (invoke "v128.store8_lane_10_offset_10" (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 10 0 0 0 0 0))
350 (i64.const 10))
351(assert_return (invoke "v128.store8_lane_11_offset_11" (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 11 0 0 0 0))
352 (i64.const 11))
353(assert_return (invoke "v128.store8_lane_12_offset_12" (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 12 0 0 0))
354 (i64.const 12))
355(assert_return (invoke "v128.store8_lane_13_offset_13" (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 13 0 0))
356 (i64.const 13))
357(assert_return (invoke "v128.store8_lane_14_offset_14" (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 14 0))
358 (i64.const 14))
359(assert_return (invoke "v128.store8_lane_15_offset_15" (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 15))
360 (i64.const 15))
361(assert_return (invoke "v128.store8_lane_0_align_1" (i32.const 0)
362 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
363 (i64.const 0))
364(assert_return (invoke "v128.store8_lane_1_align_1" (i32.const 1)
365 (v128.const i8x16 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0))
366 (i64.const 1))
367(assert_return (invoke "v128.store8_lane_2_align_1" (i32.const 2)
368 (v128.const i8x16 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0))
369 (i64.const 2))
370(assert_return (invoke "v128.store8_lane_3_align_1" (i32.const 3)
371 (v128.const i8x16 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0))
372 (i64.const 3))
373(assert_return (invoke "v128.store8_lane_4_align_1" (i32.const 4)
374 (v128.const i8x16 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0))
375 (i64.const 4))
376(assert_return (invoke "v128.store8_lane_5_align_1" (i32.const 5)
377 (v128.const i8x16 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0))
378 (i64.const 5))
379(assert_return (invoke "v128.store8_lane_6_align_1" (i32.const 6)
380 (v128.const i8x16 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0))
381 (i64.const 6))
382(assert_return (invoke "v128.store8_lane_7_align_1" (i32.const 7)
383 (v128.const i8x16 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0))
384 (i64.const 7))
385(assert_return (invoke "v128.store8_lane_8_align_1" (i32.const 8)
386 (v128.const i8x16 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0))
387 (i64.const 8))
388(assert_return (invoke "v128.store8_lane_9_align_1" (i32.const 9)
389 (v128.const i8x16 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0))
390 (i64.const 9))
391(assert_return (invoke "v128.store8_lane_10_align_1" (i32.const 10)
392 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 10 0 0 0 0 0))
393 (i64.const 10))
394(assert_return (invoke "v128.store8_lane_11_align_1" (i32.const 11)
395 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 11 0 0 0 0))
396 (i64.const 11))
397(assert_return (invoke "v128.store8_lane_12_align_1" (i32.const 12)
398 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 12 0 0 0))
399 (i64.const 12))
400(assert_return (invoke "v128.store8_lane_13_align_1" (i32.const 13)
401 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 13 0 0))
402 (i64.const 13))
403(assert_return (invoke "v128.store8_lane_14_align_1" (i32.const 14)
404 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 14 0))
405 (i64.const 14))
406(assert_return (invoke "v128.store8_lane_15_align_1" (i32.const 15)
407 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 15))
408 (i64.const 15))
409
410;; type check
411(assert_invalid (module (memory 1)
412 (func (param $x v128) (result v128)
413 (v128.store8_lane 0 (local.get $x) (i32.const 0))))
414 "type mismatch")
415
416;; invalid lane index
417(assert_invalid (module (memory 1)
418 (func (param $x v128) (result v128)
419 (v128.store8_lane 16 (i32.const 0) (local.get $x))))
420 "invalid lane index")
421
422;; invalid memarg alignment
423(assert_invalid
424 (module (memory 1)
425 (func (param $x v128) (result v128)
426 (v128.store8_lane align=2 0 (i32.const 0) (local.get $x))))
427 "alignment must not be larger than natural")
View as plain text