Skip to content

Commit 6ca1071

Browse files
HonryAndrewScheidecker
authored andcommitted
[test] Sync tests from simd#140
WebAssembly/simd#140
1 parent 3b7ffa9 commit 6ca1071

File tree

2 files changed

+19
-17
lines changed

2 files changed

+19
-17
lines changed

Test/spec/simd/simd_lane.wast

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
;; Tests for the extract_lane, replace_lane, swizzle and shuffle group instructions
22

33

4-
(module
4+
(module
55
(func (export "i8x16_extract_lane_s-first") (param v128) (result i32)
66
(i8x16.extract_lane_s 0 (local.get 0)))
77
(func (export "i8x16_extract_lane_s-last") (param v128) (result i32)
@@ -408,7 +408,7 @@
408408
(assert_invalid (module (func (result f32) (f32x4.extract_lane -1 (v128.const f32x4 0 0 0 0)))) "invalid lane index")
409409
(assert_invalid (module (func (result f32) (f32x4.extract_lane 4 (v128.const f32x4 0 0 0 0)))) "invalid lane index")
410410
(assert_invalid (module (func (result v128) (i8x16.replace_lane -1 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1)))) "invalid lane index")
411-
(assert_invalid (module (func (result v128) (i8x16.replace_lane 16 (v128.const ii8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1)))) "invalid lane index")
411+
(assert_invalid (module (func (result v128) (i8x16.replace_lane 16 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1)))) "invalid lane index")
412412
(assert_invalid (module (func (result v128) (i16x8.replace_lane -1 (v128.const i16x8 0 0 0 0 0 0 0 0) (i32.const 1)))) "invalid lane index")
413413
(assert_invalid (module (func (result v128) (i16x8.replace_lane 8 (v128.const i16x8 0 0 0 0 0 0 0 0) (i32.const 1)))) "invalid lane index")
414414
(assert_invalid (module (func (result v128) (i32x4.replace_lane -1 (v128.const i32x4 0 0 0 0) (i32.const 1)))) "invalid lane index")
@@ -433,10 +433,10 @@
433433
(assert_invalid (module (func (result v128) (i16x8.replace_lane 8 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1)))) "invalid lane index")
434434
(assert_invalid (module (func (result v128) (i32x4.replace_lane 4 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1)))) "invalid lane index")
435435
(assert_invalid (module (func (result v128) (f32x4.replace_lane 4 (v128.const i8x16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (i32.const 1)))) "invalid lane index")
436-
(assert_invalid (module (func (result i64) (i64x2.extract_lane 2 (v128.const i64x2 0 0 0 0)))) "invalid lane index")
437-
(assert_invalid (module (func (result f64) (f64x2.extract_lane 2 (v128.const f64x2 0 0 0 0)))) "invalid lane index")
438-
(assert_invalid (module (func (result v128) (i64x2.replace_lane 2 (v128.const i64x2 0 0 0 0) (i64.const 1)))) "invalid lane index")
439-
(assert_invalid (module (func (result v128) (f64x2.replace_lane 2 (v128.const f64x2 0 0 0 0) (f64.const 1.0)))) "invalid lane index")
436+
(assert_invalid (module (func (result i64) (i64x2.extract_lane 2 (v128.const i64x2 0 0)))) "invalid lane index")
437+
(assert_invalid (module (func (result f64) (f64x2.extract_lane 2 (v128.const f64x2 0 0)))) "invalid lane index")
438+
(assert_invalid (module (func (result v128) (i64x2.replace_lane 2 (v128.const i64x2 0 0) (i64.const 1)))) "invalid lane index")
439+
(assert_invalid (module (func (result v128) (f64x2.replace_lane 2 (v128.const f64x2 0 0) (f64.const 1.0)))) "invalid lane index")
440440

441441
;; Invalid parameters: required v128 but pass other types
442442

@@ -478,14 +478,16 @@
478478
(v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0) (f32.const 4.0)))) "type mismatch")
479479

480480
;; v8x16.shuffle: the 1st argument must be 16-byte literals in 0..32
481-
(assert_invalid (module (func (result v128)
482-
(v8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
483-
(v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0)
484-
(v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15)))) "invalid lane length")
485-
(assert_invalid (module (func (result v128)
486-
(v8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
487-
(v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0)
488-
(v128.const i8x16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15)))) "invalid lane length")
481+
(assert_malformed (module quote "(func (param v128) (result v128)"
482+
"local.get 0"
483+
"local.get 0"
484+
"v8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14)")
485+
"invalid lane length")
486+
(assert_malformed (module quote "(func (param v128) (result v128)"
487+
"local.get 0"
488+
"local.get 0"
489+
"v8x16.shuffle 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16)")
490+
"invalid lane length")
489491
(assert_invalid (module (func (result v128)
490492
(v8x16.shuffle -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
491493
(v128.const i8x16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0)
@@ -727,9 +729,9 @@
727729
(assert_return (invoke "as-i64x2_splat-operand" (v128.const i64x2 -1 0)) (v128.const i64x2 -1 -1))
728730
(assert_return (invoke "as-f64x2_splat-operand" (v128.const f64x2 inf nan)) (v128.const f64x2 inf inf))
729731
(assert_return (invoke "as-i8x16_add-operands"
730-
(v128.const i8x16 0xff 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16) (i32.const 1)
732+
(v128.const i8x16 0xff 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16) (i32.const 1)
731733
(v128.const i8x16 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 0xff) (i32.const 1))
732-
(v128.const i8x16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17))
734+
(v128.const i8x16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17))
733735
(assert_return (invoke "as-i16x8_add-operands"
734736
(v128.const i16x8 -1 4 9 16 25 36 49 64) (i32.const 1)
735737
(v128.const i16x8 64 49 36 25 16 9 4 -1) (i32.const 1))

Test/spec/simd/simd_splat.wast

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@
229229
(i8x16.sub_saturate_u (i8x16.splat (local.get 0)) (i8x16.splat (local.get 1))))
230230
(func (export "as-i16x8_sub_saturate_u-operands") (param i32 i32) (result v128)
231231
(i16x8.sub_saturate_u (i16x8.splat (local.get 0)) (i16x8.splat (local.get 1))))
232-
232+
233233
;; Bit shifts
234234
(func (export "as-i8x16_shr_s-operand") (param i32 i32) (result v128)
235235
(i8x16.shr_s (i8x16.splat (local.get 0)) (local.get 1)))

0 commit comments

Comments
 (0)