Skip to content

Commit 073ba1c

Browse files
committed
SIMD and other test fixes
1 parent b87f6a9 commit 073ba1c

36 files changed

+2104
-2045
lines changed

src/lexer-keywords.txt

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -160,8 +160,8 @@ global.set, TokenType::GlobalSet, Opcode::GlobalSet
160160
global, TokenType::Global
161161
grow_memory, TokenType::MemoryGrow, Opcode::MemoryGrow
162162
i16x8.abs, TokenType::Unary, Opcode::I16X8Abs
163-
i16x8.add_saturate_s, TokenType::Binary, Opcode::I16X8AddSaturateS
164-
i16x8.add_saturate_u, TokenType::Binary, Opcode::I16X8AddSaturateU
163+
i16x8.add_sat_s, TokenType::Binary, Opcode::I16X8AddSaturateS
164+
i16x8.add_sat_u, TokenType::Binary, Opcode::I16X8AddSaturateU
165165
i16x8.add, TokenType::Binary, Opcode::I16X8Add
166166
i16x8.all_true, TokenType::Unary, Opcode::I16X8AllTrue
167167
i16x8.any_true, TokenType::Unary, Opcode::I16X8AnyTrue
@@ -176,8 +176,6 @@ i16x8.gt_s, TokenType::Compare, Opcode::I16X8GtS
176176
i16x8.gt_u, TokenType::Compare, Opcode::I16X8GtU
177177
i16x8.le_s, TokenType::Compare, Opcode::I16X8LeS
178178
i16x8.le_u, TokenType::Compare, Opcode::I16X8LeU
179-
i16x8.load8x8_s, TokenType::Load, Opcode::I16X8Load8X8S
180-
i16x8.load8x8_u, TokenType::Load, Opcode::I16X8Load8X8U
181179
i16x8.lt_s, TokenType::Compare, Opcode::I16X8LtS
182180
i16x8.lt_u, TokenType::Compare, Opcode::I16X8LtU
183181
i16x8.max_s, TokenType::Binary, Opcode::I16X8MaxS
@@ -194,8 +192,8 @@ i16x8.shl, TokenType::Binary, Opcode::I16X8Shl
194192
i16x8.shr_s, TokenType::Binary, Opcode::I16X8ShrS
195193
i16x8.shr_u, TokenType::Binary, Opcode::I16X8ShrU
196194
i16x8.splat, TokenType::Unary, Opcode::I16X8Splat
197-
i16x8.sub_saturate_s, TokenType::Binary, Opcode::I16X8SubSaturateS
198-
i16x8.sub_saturate_u, TokenType::Binary, Opcode::I16X8SubSaturateU
195+
i16x8.sub_sat_s, TokenType::Binary, Opcode::I16X8SubSaturateS
196+
i16x8.sub_sat_u, TokenType::Binary, Opcode::I16X8SubSaturateU
199197
i16x8.sub, TokenType::Binary, Opcode::I16X8Sub
200198
i16x8, TokenType::I16X8
201199
i16x8.widen_high_i8x16_s, TokenType::Unary, Opcode::I16X8WidenHighI8X16S
@@ -293,8 +291,6 @@ i32x4.gt_s, TokenType::Compare, Opcode::I32X4GtS
293291
i32x4.gt_u, TokenType::Compare, Opcode::I32X4GtU
294292
i32x4.le_s, TokenType::Compare, Opcode::I32X4LeS
295293
i32x4.le_u, TokenType::Compare, Opcode::I32X4LeU
296-
i32x4.load16x4_s, TokenType::Load, Opcode::I32X4Load16X4S
297-
i32x4.load16x4_u, TokenType::Load, Opcode::I32X4Load16X4U
298294
i32x4.lt_s, TokenType::Compare, Opcode::I32X4LtS
299295
i32x4.lt_u, TokenType::Compare, Opcode::I32X4LtU
300296
i32x4.max_s, TokenType::Binary, Opcode::I32X4MaxS
@@ -412,8 +408,6 @@ i64.trunc_sat_f64_u, TokenType::Convert, Opcode::I64TruncSatF64U
412408
i64, Type::I64
413409
i64x2.add, TokenType::Binary, Opcode::I64X2Add
414410
i64x2.extract_lane, TokenType::SimdLaneOp, Opcode::I64X2ExtractLane
415-
i64x2.load32x2_s, TokenType::Load, Opcode::I64X2Load32X2S
416-
i64x2.load32x2_u, TokenType::Load, Opcode::I64X2Load32X2U
417411
i64x2.mul, TokenType::Binary, Opcode::I64X2Mul
418412
i64x2.neg, TokenType::Unary, Opcode::I64X2Neg
419413
i64x2.replace_lane, TokenType::SimdLaneOp, Opcode::I64X2ReplaceLane
@@ -425,8 +419,8 @@ i64x2.sub, TokenType::Binary, Opcode::I64X2Sub
425419
i64x2, TokenType::I64X2
426420
i64.xor, TokenType::Binary, Opcode::I64Xor
427421
i8x16.abs, TokenType::Unary, Opcode::I8X16Abs
428-
i8x16.add_saturate_s, TokenType::Binary, Opcode::I8X16AddSaturateS
429-
i8x16.add_saturate_u, TokenType::Binary, Opcode::I8X16AddSaturateU
422+
i8x16.add_sat_s, TokenType::Binary, Opcode::I8X16AddSaturateS
423+
i8x16.add_sat_u, TokenType::Binary, Opcode::I8X16AddSaturateU
430424
i8x16.add, TokenType::Binary, Opcode::I8X16Add
431425
i8x16.all_true, TokenType::Unary, Opcode::I8X16AllTrue
432426
i8x16.any_true, TokenType::Unary, Opcode::I8X16AnyTrue
@@ -456,10 +450,12 @@ i8x16.shl, TokenType::Binary, Opcode::I8X16Shl
456450
i8x16.shr_s, TokenType::Binary, Opcode::I8X16ShrS
457451
i8x16.shr_u, TokenType::Binary, Opcode::I8X16ShrU
458452
i8x16.splat, TokenType::Unary, Opcode::I8X16Splat
459-
i8x16.sub_saturate_s, TokenType::Binary, Opcode::I8X16SubSaturateS
460-
i8x16.sub_saturate_u, TokenType::Binary, Opcode::I8X16SubSaturateU
453+
i8x16.sub_sat_s, TokenType::Binary, Opcode::I8X16SubSaturateS
454+
i8x16.sub_sat_u, TokenType::Binary, Opcode::I8X16SubSaturateU
461455
i8x16.sub, TokenType::Binary, Opcode::I8X16Sub
462456
i8x16, TokenType::I8X16
457+
i8x16.shuffle, TokenType::SimdShuffleOp, Opcode::V8X16Shuffle
458+
i8x16.swizzle, TokenType::Binary, Opcode::V8X16Swizzle
463459
if, TokenType::If, Opcode::If
464460
import, TokenType::Import
465461
input, TokenType::Input
@@ -522,12 +518,16 @@ v128.or, TokenType::Binary, Opcode::V128Or
522518
v128.store, TokenType::Store, Opcode::V128Store
523519
v128, Type::V128
524520
v128.xor, TokenType::Binary, Opcode::V128Xor
525-
v16x8.load_splat, TokenType::Load, Opcode::V16X8LoadSplat
526-
v32x4.load_splat, TokenType::Load, Opcode::V32X4LoadSplat
527-
v64x2.load_splat, TokenType::Load, Opcode::V64X2LoadSplat
528-
v8x16.load_splat, TokenType::Load, Opcode::V8X16LoadSplat
529-
v8x16.shuffle, TokenType::SimdShuffleOp, Opcode::V8X16Shuffle
530-
v8x16.swizzle, TokenType::Binary, Opcode::V8X16Swizzle
521+
v128.load8x8_s, TokenType::Load, Opcode::I16X8Load8X8S
522+
v128.load8x8_u, TokenType::Load, Opcode::I16X8Load8X8U
523+
v128.load16x4_s, TokenType::Load, Opcode::I32X4Load16X4S
524+
v128.load16x4_u, TokenType::Load, Opcode::I32X4Load16X4U
525+
v128.load32x2_s, TokenType::Load, Opcode::I64X2Load32X2S
526+
v128.load32x2_u, TokenType::Load, Opcode::I64X2Load32X2U
527+
v128.load8_splat, TokenType::Load, Opcode::V16X8LoadSplat
528+
v128.load16_splat, TokenType::Load, Opcode::V32X4LoadSplat
529+
v128.load32_splat, TokenType::Load, Opcode::V64X2LoadSplat
530+
v128.load64_splat, TokenType::Load, Opcode::V8X16LoadSplat
531531
# Deprecated names.
532532
anyfunc, Type::FuncRef
533533
f32.convert_s/i32, TokenType::Convert, Opcode::F32ConvertI32S

src/opcode.def

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -261,20 +261,20 @@ WABT_OPCODE(___, ___, ___, ___, 0, 0, 0xd2, RefFunc, "ref.func", "")
261261

262262
/* Simd opcodes (--enable-simd) */
263263
WABT_OPCODE(V128, I32, ___, ___, 16, 0xfd, 0x00, V128Load, "v128.load", "")
264-
WABT_OPCODE(V128, I32, ___, ___, 8, 0xfd, 0x01, I16X8Load8X8S, "i16x8.load8x8_s", "")
265-
WABT_OPCODE(V128, I32, ___, ___, 8, 0xfd, 0x02, I16X8Load8X8U, "i16x8.load8x8_u", "")
266-
WABT_OPCODE(V128, I32, ___, ___, 8, 0xfd, 0x03, I32X4Load16X4S, "i32x4.load16x4_s", "")
267-
WABT_OPCODE(V128, I32, ___, ___, 8, 0xfd, 0x04, I32X4Load16X4U, "i32x4.load16x4_u", "")
268-
WABT_OPCODE(V128, I32, ___, ___, 8, 0xfd, 0x05, I64X2Load32X2S, "i64x2.load32x2_s", "")
269-
WABT_OPCODE(V128, I32, ___, ___, 8, 0xfd, 0x06, I64X2Load32X2U, "i64x2.load32x2_u", "")
270-
WABT_OPCODE(V128, I32, ___, ___, 1, 0xfd, 0x07, V8X16LoadSplat, "v8x16.load_splat", "")
271-
WABT_OPCODE(V128, I32, ___, ___, 2, 0xfd, 0x08, V16X8LoadSplat, "v16x8.load_splat", "")
272-
WABT_OPCODE(V128, I32, ___, ___, 4, 0xfd, 0x09, V32X4LoadSplat, "v32x4.load_splat", "")
273-
WABT_OPCODE(V128, I32, ___, ___, 8, 0xfd, 0x0a, V64X2LoadSplat, "v64x2.load_splat", "")
264+
WABT_OPCODE(V128, I32, ___, ___, 8, 0xfd, 0x01, I16X8Load8X8S, "v128.load8x8_s", "")
265+
WABT_OPCODE(V128, I32, ___, ___, 8, 0xfd, 0x02, I16X8Load8X8U, "v128.load8x8_u", "")
266+
WABT_OPCODE(V128, I32, ___, ___, 8, 0xfd, 0x03, I32X4Load16X4S, "v128.load16x4_s", "")
267+
WABT_OPCODE(V128, I32, ___, ___, 8, 0xfd, 0x04, I32X4Load16X4U, "v128.load16x4_u", "")
268+
WABT_OPCODE(V128, I32, ___, ___, 8, 0xfd, 0x05, I64X2Load32X2S, "v128.load32x2_s", "")
269+
WABT_OPCODE(V128, I32, ___, ___, 8, 0xfd, 0x06, I64X2Load32X2U, "v128.load32x2_u", "")
270+
WABT_OPCODE(V128, I32, ___, ___, 1, 0xfd, 0x07, V8X16LoadSplat, "v128.load8_splat", "")
271+
WABT_OPCODE(V128, I32, ___, ___, 2, 0xfd, 0x08, V16X8LoadSplat, "v128.load16_splat", "")
272+
WABT_OPCODE(V128, I32, ___, ___, 4, 0xfd, 0x09, V32X4LoadSplat, "v128.load32_splat", "")
273+
WABT_OPCODE(V128, I32, ___, ___, 8, 0xfd, 0x0a, V64X2LoadSplat, "v128.load64_splat", "")
274274
WABT_OPCODE(___, I32, V128, ___, 16, 0xfd, 0x0b, V128Store, "v128.store", "")
275275
WABT_OPCODE(V128, ___, ___, ___, 0, 0xfd, 0x0c, V128Const, "v128.const", "")
276-
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x0d, V8X16Shuffle, "v8x16.shuffle", "")
277-
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x0e, V8X16Swizzle, "v8x16.swizzle", "")
276+
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x0d, V8X16Shuffle, "i8x16.shuffle", "")
277+
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x0e, V8X16Swizzle, "i8x16.swizzle", "")
278278
WABT_OPCODE(V128, I32, ___, ___, 0, 0xfd, 0x0f, I8X16Splat, "i8x16.splat", "")
279279
WABT_OPCODE(V128, I32, ___, ___, 0, 0xfd, 0x10, I16X8Splat, "i16x8.splat", "")
280280
WABT_OPCODE(V128, I32, ___, ___, 0, 0xfd, 0x11, I32X4Splat, "i32x4.splat", "")
@@ -354,11 +354,11 @@ WABT_OPCODE(V128, V128, I32, ___, 0, 0xfd, 0x6b, I8X16Shl, "i8x16.shl", "")
354354
WABT_OPCODE(V128, V128, I32, ___, 0, 0xfd, 0x6c, I8X16ShrS, "i8x16.shr_s", "")
355355
WABT_OPCODE(V128, V128, I32, ___, 0, 0xfd, 0x6d, I8X16ShrU, "i8x16.shr_u", "")
356356
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x6e, I8X16Add, "i8x16.add", "")
357-
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x6f, I8X16AddSaturateS, "i8x16.add_saturate_s", "")
358-
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x70, I8X16AddSaturateU, "i8x16.add_saturate_u", "")
357+
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x6f, I8X16AddSaturateS, "i8x16.add_sat_s", "")
358+
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x70, I8X16AddSaturateU, "i8x16.add_sat_u", "")
359359
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x71, I8X16Sub, "i8x16.sub", "")
360-
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x72, I8X16SubSaturateS, "i8x16.sub_saturate_s", "")
361-
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x73, I8X16SubSaturateU, "i8x16.sub_saturate_u", "")
360+
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x72, I8X16SubSaturateS, "i8x16.sub_sat_s", "")
361+
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x73, I8X16SubSaturateU, "i8x16.sub_sat_u", "")
362362
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x76, I8X16MinS, "i8x16.min_s", "")
363363
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x77, I8X16MinU, "i8x16.min_u", "")
364364
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x78, I8X16MaxS, "i8x16.max_s", "")
@@ -379,11 +379,11 @@ WABT_OPCODE(V128, V128, I32, ___, 0, 0xfd, 0x8b, I16X8Shl, "i16x8.shl", "")
379379
WABT_OPCODE(V128, V128, I32, ___, 0, 0xfd, 0x8c, I16X8ShrS, "i16x8.shr_s", "")
380380
WABT_OPCODE(V128, V128, I32, ___, 0, 0xfd, 0x8d, I16X8ShrU, "i16x8.shr_u", "")
381381
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x8e, I16X8Add, "i16x8.add", "")
382-
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x8f, I16X8AddSaturateS, "i16x8.add_saturate_s", "")
383-
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x90, I16X8AddSaturateU, "i16x8.add_saturate_u", "")
382+
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x8f, I16X8AddSaturateS, "i16x8.add_sat_s", "")
383+
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x90, I16X8AddSaturateU, "i16x8.add_sat_u", "")
384384
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x91, I16X8Sub, "i16x8.sub", "")
385-
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x92, I16X8SubSaturateS, "i16x8.sub_saturate_s", "")
386-
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x93, I16X8SubSaturateU, "i16x8.sub_saturate_u", "")
385+
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x92, I16X8SubSaturateS, "i16x8.sub_sat_s", "")
386+
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x93, I16X8SubSaturateU, "i16x8.sub_sat_u", "")
387387
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x95, I16X8Mul, "i16x8.mul", "")
388388
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x96, I16X8MinS, "i16x8.min_s", "")
389389
WABT_OPCODE(V128, V128, V128, ___, 0, 0xfd, 0x97, I16X8MinU, "i16x8.min_u", "")

0 commit comments

Comments
 (0)