diff options
author | Thomas Lively <7121787+tlively@users.noreply.github.com> | 2021-04-05 12:33:25 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-05 12:33:25 -0700 |
commit | 1bb172c789bb3a61aeaae78f5464d0544627ed3e (patch) | |
tree | 6bcfd54944e52f9c3f8354a3d3f523f45a5ee670 /test/binaryen.js | |
parent | c59df4cda843ef11ad261f5c889dddc9a9d59d3b (diff) | |
download | binaryen-1bb172c789bb3a61aeaae78f5464d0544627ed3e.tar.gz binaryen-1bb172c789bb3a61aeaae78f5464d0544627ed3e.tar.bz2 binaryen-1bb172c789bb3a61aeaae78f5464d0544627ed3e.zip |
Update SIMD names and opcodes (#3771)
Also removes experimental SIMD instructions that were not included in the final
spec proposal.
Diffstat (limited to 'test/binaryen.js')
-rw-r--r-- | test/binaryen.js/exception-handling.js.txt | 8 | ||||
-rw-r--r-- | test/binaryen.js/expressions.js | 24 | ||||
-rw-r--r-- | test/binaryen.js/expressions.js.txt | 13 | ||||
-rw-r--r-- | test/binaryen.js/kitchen-sink.js | 57 | ||||
-rw-r--r-- | test/binaryen.js/kitchen-sink.js.txt | 332 |
5 files changed, 142 insertions, 292 deletions
diff --git a/test/binaryen.js/exception-handling.js.txt b/test/binaryen.js/exception-handling.js.txt index 434546126..386abfb4d 100644 --- a/test/binaryen.js/exception-handling.js.txt +++ b/test/binaryen.js/exception-handling.js.txt @@ -34,7 +34,7 @@ ) ) -getExpressionInfo(throw) = {"id":48,"type":1,"event":"e"} -getExpressionInfo(rethrow) = {"id":49,"type":1,"target":"l0"} -getExpressionInfo(try_catch) = {"id":47,"type":1,"name":"l0","hasCatchAll":0,"delegateTarget":"","isDelegate":0} -getExpressionInfo(try_delegate) = {"id":47,"type":0,"name":"try_outer","hasCatchAll":1,"delegateTarget":"","isDelegate":0} +getExpressionInfo(throw) = {"id":46,"type":1,"event":"e"} +getExpressionInfo(rethrow) = {"id":47,"type":1,"target":"l0"} +getExpressionInfo(try_catch) = {"id":45,"type":1,"name":"l0","hasCatchAll":0,"delegateTarget":"","isDelegate":0} +getExpressionInfo(try_delegate) = {"id":45,"type":0,"name":"try_outer","hasCatchAll":1,"delegateTarget":"","isDelegate":0} diff --git a/test/binaryen.js/expressions.js b/test/binaryen.js/expressions.js index d6256cec1..68f5c8cee 100644 --- a/test/binaryen.js/expressions.js +++ b/test/binaryen.js/expressions.js @@ -1079,7 +1079,7 @@ console.log("# SIMDShuffle"); var left = module.v128.const([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]); var right = module.v128.const([2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]); var mask = [3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]; - const theSIMDShuffle = binaryen.SIMDShuffle(module.v8x16.shuffle(left, right, mask)); + const theSIMDShuffle = binaryen.SIMDShuffle(module.i8x16.shuffle(left, right, mask)); assert(theSIMDShuffle instanceof binaryen.SIMDShuffle); assert(theSIMDShuffle instanceof binaryen.Expression); assert(theSIMDShuffle.left === left); @@ -1101,7 +1101,7 @@ console.log("# SIMDShuffle"); assert( theSIMDShuffle.toText() == - "(v8x16.shuffle 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3\n (v128.const i32x4 0x01010101 0x01010101 0x01010101 0x01010101)\n (v128.const i32x4 0x02020202 0x02020202 0x02020202 0x02020202)\n)\n" + "(i8x16.shuffle 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3\n (v128.const i32x4 0x01010101 0x01010101 0x01010101 0x01010101)\n (v128.const i32x4 0x02020202 0x02020202 0x02020202 0x02020202)\n)\n" ); module.dispose(); @@ -1124,23 +1124,11 @@ console.log("# SIMDTernary"); assert(theSIMDTernary.c === c); assert(theSIMDTernary.type === binaryen.v128); - theSIMDTernary.op = op = binaryen.Operations.QFMAVecF64x2; - assert(theSIMDTernary.op === op); - theSIMDTernary.a = a = module.v128.const([1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]); - assert(theSIMDTernary.a === a); - theSIMDTernary.b = b = module.v128.const([2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]); - assert(theSIMDTernary.b === b); - theSIMDTernary.c = c = module.v128.const([3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3]); - assert(theSIMDTernary.c === c); - theSIMDTernary.type = binaryen.f64; - theSIMDTernary.finalize(); - assert(theSIMDTernary.type === binaryen.v128); - - console.log(theSIMDTernary.toText()); + console.log(theSIMDTernary.toText() + "\n"); assert( theSIMDTernary.toText() == - "(f64x2.qfma\n (v128.const i32x4 0x01010101 0x01010101 0x01010101 0x01010101)\n (v128.const i32x4 0x02020202 0x02020202 0x02020202 0x02020202)\n (v128.const i32x4 0x03030303 0x03030303 0x03030303 0x03030303)\n)\n" + "(v128.bitselect\n (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)\n (v128.const i32x4 0x05040302 0x09080706 0x0d0c0b0a 0x11100f0e)\n (v128.const i32x4 0x06050403 0x0a090807 0x0e0d0c0b 0x1211100f)\n)\n" ); module.dispose(); @@ -1189,7 +1177,7 @@ console.log("# SIMDLoad"); var offset = 16; var align = 2; var ptr = module.i32.const(1); - const theSIMDLoad = binaryen.SIMDLoad(module.i16x8.load8x8_s(offset, align, ptr)); + const theSIMDLoad = binaryen.SIMDLoad(module.v128.load8x8_s(offset, align, ptr)); assert(theSIMDLoad instanceof binaryen.SIMDLoad); assert(theSIMDLoad instanceof binaryen.Expression); assert(theSIMDLoad.offset === offset); @@ -1213,7 +1201,7 @@ console.log("# SIMDLoad"); assert( theSIMDLoad.toText() == - "(v8x16.load_splat offset=32 align=4\n (i32.const 2)\n)\n" + "(v128.load8_splat offset=32 align=4\n (i32.const 2)\n)\n" ); module.dispose(); diff --git a/test/binaryen.js/expressions.js.txt b/test/binaryen.js/expressions.js.txt index 0467e9332..a3e877b0f 100644 --- a/test/binaryen.js/expressions.js.txt +++ b/test/binaryen.js/expressions.js.txt @@ -155,18 +155,19 @@ ) # SIMDShuffle -(v8x16.shuffle 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 +(i8x16.shuffle 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 (v128.const i32x4 0x01010101 0x01010101 0x01010101 0x01010101) (v128.const i32x4 0x02020202 0x02020202 0x02020202 0x02020202) ) # SIMDTernary -(f64x2.qfma - (v128.const i32x4 0x01010101 0x01010101 0x01010101 0x01010101) - (v128.const i32x4 0x02020202 0x02020202 0x02020202 0x02020202) - (v128.const i32x4 0x03030303 0x03030303 0x03030303 0x03030303) +(v128.bitselect + (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) + (v128.const i32x4 0x05040302 0x09080706 0x0d0c0b0a 0x11100f0e) + (v128.const i32x4 0x06050403 0x0a090807 0x0e0d0c0b 0x1211100f) ) + # SIMDShift (i8x16.shr_s (v128.const i32x4 0x01010101 0x01010101 0x01010101 0x01010101) @@ -174,7 +175,7 @@ ) # SIMDLoad -(v8x16.load_splat offset=32 align=4 +(v128.load8_splat offset=32 align=4 (i32.const 2) ) diff --git a/test/binaryen.js/kitchen-sink.js b/test/binaryen.js/kitchen-sink.js index 084a7d47b..cb2cd32ff 100644 --- a/test/binaryen.js/kitchen-sink.js +++ b/test/binaryen.js/kitchen-sink.js @@ -265,19 +265,17 @@ function test_core() { module.f32x4.splat(module.f32.const(42.0)), module.f64x2.splat(module.f64.const(42.0)), module.v128.not(module.v128.const(v128_bytes)), + module.v128.any_true(module.v128.const(v128_bytes)), module.i8x16.abs(module.v128.const(v128_bytes)), module.i8x16.neg(module.v128.const(v128_bytes)), - module.i8x16.any_true(module.v128.const(v128_bytes)), module.i8x16.all_true(module.v128.const(v128_bytes)), module.i8x16.bitmask(module.v128.const(v128_bytes)), module.i16x8.abs(module.v128.const(v128_bytes)), module.i16x8.neg(module.v128.const(v128_bytes)), - module.i16x8.any_true(module.v128.const(v128_bytes)), module.i16x8.all_true(module.v128.const(v128_bytes)), module.i16x8.bitmask(module.v128.const(v128_bytes)), module.i32x4.abs(module.v128.const(v128_bytes)), module.i32x4.neg(module.v128.const(v128_bytes)), - module.i32x4.any_true(module.v128.const(v128_bytes)), module.i32x4.all_true(module.v128.const(v128_bytes)), module.i32x4.bitmask(module.v128.const(v128_bytes)), module.i64x2.neg(module.v128.const(v128_bytes)), @@ -289,20 +287,16 @@ function test_core() { module.f64x2.sqrt(module.v128.const(v128_bytes)), module.i32x4.trunc_sat_f32x4_s(module.v128.const(v128_bytes)), module.i32x4.trunc_sat_f32x4_u(module.v128.const(v128_bytes)), - module.i64x2.trunc_sat_f64x2_s(module.v128.const(v128_bytes)), - module.i64x2.trunc_sat_f64x2_u(module.v128.const(v128_bytes)), module.f32x4.convert_i32x4_s(module.v128.const(v128_bytes)), module.f32x4.convert_i32x4_u(module.v128.const(v128_bytes)), - module.f64x2.convert_i64x2_s(module.v128.const(v128_bytes)), - module.f64x2.convert_i64x2_u(module.v128.const(v128_bytes)), - module.i16x8.widen_low_i8x16_s(module.v128.const(v128_bytes)), - module.i16x8.widen_high_i8x16_s(module.v128.const(v128_bytes)), - module.i16x8.widen_low_i8x16_u(module.v128.const(v128_bytes)), - module.i16x8.widen_high_i8x16_u(module.v128.const(v128_bytes)), - module.i32x4.widen_low_i16x8_s(module.v128.const(v128_bytes)), - module.i32x4.widen_high_i16x8_s(module.v128.const(v128_bytes)), - module.i32x4.widen_low_i16x8_u(module.v128.const(v128_bytes)), - module.i32x4.widen_high_i16x8_u(module.v128.const(v128_bytes)), + module.i16x8.extend_low_i8x16_s(module.v128.const(v128_bytes)), + module.i16x8.extend_high_i8x16_s(module.v128.const(v128_bytes)), + module.i16x8.extend_low_i8x16_u(module.v128.const(v128_bytes)), + module.i16x8.extend_high_i8x16_u(module.v128.const(v128_bytes)), + module.i32x4.extend_low_i16x8_s(module.v128.const(v128_bytes)), + module.i32x4.extend_high_i16x8_s(module.v128.const(v128_bytes)), + module.i32x4.extend_low_i16x8_u(module.v128.const(v128_bytes)), + module.i32x4.extend_high_i16x8_u(module.v128.const(v128_bytes)), // Binary module.i32.add(module.i32.const(-10), module.i32.const(-11)), module.f64.sub(module.f64.const(-9005.841), module.f64.const(-9007.333)), @@ -388,7 +382,6 @@ function test_core() { module.i8x16.sub(module.v128.const(v128_bytes), module.v128.const(v128_bytes)), module.i8x16.sub_saturate_s(module.v128.const(v128_bytes), module.v128.const(v128_bytes)), module.i8x16.sub_saturate_u(module.v128.const(v128_bytes), module.v128.const(v128_bytes)), - module.i8x16.mul(module.v128.const(v128_bytes), module.v128.const(v128_bytes)), module.i8x16.min_s(module.v128.const(v128_bytes), module.v128.const(v128_bytes)), module.i8x16.min_u(module.v128.const(v128_bytes), module.v128.const(v128_bytes)), module.i8x16.max_s(module.v128.const(v128_bytes), module.v128.const(v128_bytes)), @@ -445,7 +438,7 @@ function test_core() { module.i8x16.narrow_i16x8_u(module.v128.const(v128_bytes), module.v128.const(v128_bytes)), module.i16x8.narrow_i32x4_s(module.v128.const(v128_bytes), module.v128.const(v128_bytes)), module.i16x8.narrow_i32x4_u(module.v128.const(v128_bytes), module.v128.const(v128_bytes)), - module.v8x16.swizzle(module.v128.const(v128_bytes), module.v128.const(v128_bytes)), + module.i8x16.swizzle(module.v128.const(v128_bytes), module.v128.const(v128_bytes)), // SIMD lane manipulation module.i8x16.extract_lane_s(module.v128.const(v128_bytes), 1), module.i8x16.extract_lane_u(module.v128.const(v128_bytes), 1), @@ -475,23 +468,19 @@ function test_core() { module.i64x2.shr_s(module.v128.const(v128_bytes), module.i32.const(1)), module.i64x2.shr_u(module.v128.const(v128_bytes), module.i32.const(1)), // SIMD load - module.v8x16.load_splat(0, 1, module.i32.const(128)), - module.v16x8.load_splat(16, 1, module.i32.const(128)), - module.v32x4.load_splat(16, 4, module.i32.const(128)), - module.v64x2.load_splat(0, 4, module.i32.const(128)), - module.i16x8.load8x8_s(0, 8, module.i32.const(128)), - module.i16x8.load8x8_u(0, 8, module.i32.const(128)), - module.i32x4.load16x4_s(0, 8, module.i32.const(128)), - module.i32x4.load16x4_u(0, 8, module.i32.const(128)), - module.i64x2.load32x2_s(0, 8, module.i32.const(128)), - module.i64x2.load32x2_u(0, 8, module.i32.const(128)), + module.v128.load8_splat(0, 1, module.i32.const(128)), + module.v128.load16_splat(16, 1, module.i32.const(128)), + module.v128.load32_splat(16, 4, module.i32.const(128)), + module.v128.load64_splat(0, 4, module.i32.const(128)), + module.v128.load8x8_s(0, 8, module.i32.const(128)), + module.v128.load8x8_u(0, 8, module.i32.const(128)), + module.v128.load16x4_s(0, 8, module.i32.const(128)), + module.v128.load16x4_u(0, 8, module.i32.const(128)), + module.v128.load32x2_s(0, 8, module.i32.const(128)), + module.v128.load32x2_u(0, 8, module.i32.const(128)), // Other SIMD - module.v8x16.shuffle(module.v128.const(v128_bytes), module.v128.const(v128_bytes), v128_bytes), + module.i8x16.shuffle(module.v128.const(v128_bytes), module.v128.const(v128_bytes), v128_bytes), module.v128.bitselect(module.v128.const(v128_bytes), module.v128.const(v128_bytes), module.v128.const(v128_bytes)), - module.f32x4.qfma(module.v128.const(v128_bytes), module.v128.const(v128_bytes), module.v128.const(v128_bytes)), - module.f32x4.qfms(module.v128.const(v128_bytes), module.v128.const(v128_bytes), module.v128.const(v128_bytes)), - module.f64x2.qfma(module.v128.const(v128_bytes), module.v128.const(v128_bytes), module.v128.const(v128_bytes)), - module.f64x2.qfms(module.v128.const(v128_bytes), module.v128.const(v128_bytes), module.v128.const(v128_bytes)), // Bulk memory module.memory.init(0, makeInt32(1024), makeInt32(0), makeInt32(12)), module.data.drop(0), @@ -676,10 +665,10 @@ function test_core() { assert(table.base === ""); assert(table.initial === 0); assert(table.max === 2); - + module.removeTable("t1"); assert(module.getNumTables() === 0); - + module.addTable("t0", 1, 0xffffffff); module.addActiveElementSegment("t0", "e0", [ binaryen.getFunctionInfo(sinker).name ]); assert(module.getNumTables() === 1); diff --git a/test/binaryen.js/kitchen-sink.js.txt b/test/binaryen.js/kitchen-sink.js.txt index a8ea4eccf..9d97b6523 100644 --- a/test/binaryen.js/kitchen-sink.js.txt +++ b/test/binaryen.js/kitchen-sink.js.txt @@ -66,46 +66,46 @@ ReturnId: 19 MemorySizeId: 20 MemoryGrowId: 21 NopId: 22 -UnreachableId: 24 -AtomicCmpxchgId: 26 -AtomicRMWId: 25 -AtomicWaitId: 27 -AtomicNotifyId: 28 -SIMDExtractId: 30 -SIMDReplaceId: 31 -SIMDShuffleId: 32 -SIMDTernaryId: 33 -SIMDShiftId: 34 -SIMDLoadId: 35 -MemoryInitId: 38 -DataDropId: 39 -MemoryCopyId: 40 -MemoryFillId: 41 -PopId: 42 -RefNullId: 43 -RefIsId: 44 -RefFuncId: 45 -RefEqId: 46 -TryId: 47 -ThrowId: 48 -RethrowId: 49 -TupleMakeId: 50 -TupleExtractId: 51 -I31NewId: 52 -I31GetId: 53 -CallRefId: 54 -RefTestId: 55 -RefCastId: 56 -BrOnId: 57 -RttCanonId: 58 -RttSubId: 59 -StructNewId: 60 -StructGetId: 61 -StructSetId: 62 -ArrayNewId: 63 -ArrayGetId: 64 -ArraySetId: 65 -ArrayLenId: 66 +UnreachableId: 23 +AtomicCmpxchgId: 25 +AtomicRMWId: 24 +AtomicWaitId: 26 +AtomicNotifyId: 27 +SIMDExtractId: 29 +SIMDReplaceId: 30 +SIMDShuffleId: 31 +SIMDTernaryId: 32 +SIMDShiftId: 33 +SIMDLoadId: 34 +MemoryInitId: 36 +DataDropId: 37 +MemoryCopyId: 38 +MemoryFillId: 39 +PopId: 40 +RefNullId: 41 +RefIsId: 42 +RefFuncId: 43 +RefEqId: 44 +TryId: 45 +ThrowId: 46 +RethrowId: 47 +TupleMakeId: 48 +TupleExtractId: 49 +I31NewId: 50 +I31GetId: 51 +CallRefId: 52 +RefTestId: 53 +RefCastId: 54 +BrOnId: 55 +RttCanonId: 56 +RttSubId: 57 +StructNewId: 58 +StructGetId: 59 +StructSetId: 60 +ArrayNewId: 61 +ArrayGetId: 62 +ArraySetId: 63 +ArrayLenId: 64 getExpressionInfo={"id":15,"type":4,"op":6} (f32.neg (f32.const -33.61199951171875) @@ -402,17 +402,17 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i8x16.abs + (v128.any_true (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i8x16.neg + (i8x16.abs (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i8x16.any_true + (i8x16.neg (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) @@ -437,11 +437,6 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i16x8.any_true - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop (i16x8.all_true (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -462,11 +457,6 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i32x4.any_true - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop (i32x4.all_true (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -522,16 +512,6 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i64x2.trunc_sat_f64x2_s - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop - (i64x2.trunc_sat_f64x2_u - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop (f32x4.convert_i32x4_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -542,52 +522,42 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (f64x2.convert_i64x2_s - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop - (f64x2.convert_i64x2_u + (i16x8.extend_low_i8x16_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i16x8.widen_low_i8x16_s + (i16x8.extend_high_i8x16_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i16x8.widen_high_i8x16_s + (i16x8.extend_low_i8x16_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i16x8.widen_low_i8x16_u + (i16x8.extend_high_i8x16_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i16x8.widen_high_i8x16_u + (i32x4.extend_low_i16x8_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i32x4.widen_low_i16x8_s + (i32x4.extend_high_i16x8_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i32x4.widen_high_i16x8_s + (i32x4.extend_low_i16x8_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i32x4.widen_low_i16x8_u - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop - (i32x4.widen_high_i16x8_u + (i32x4.extend_high_i16x8_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) @@ -1066,13 +1036,13 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i8x16.add_saturate_s + (i8x16.add_sat_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i8x16.add_saturate_u + (i8x16.add_sat_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -1084,19 +1054,13 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i8x16.sub_saturate_s + (i8x16.sub_sat_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i8x16.sub_saturate_u - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop - (i8x16.mul + (i8x16.sub_sat_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -1138,13 +1102,13 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i16x8.add_saturate_s + (i16x8.add_sat_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i16x8.add_saturate_u + (i16x8.add_sat_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -1156,13 +1120,13 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i16x8.sub_saturate_s + (i16x8.sub_sat_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i16x8.sub_saturate_u + (i16x8.sub_sat_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -1430,7 +1394,7 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (v8x16.swizzle + (i8x16.swizzle (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -1584,57 +1548,57 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (v8x16.load_splat + (v128.load8_splat (i32.const 128) ) ) (drop - (v16x8.load_splat offset=16 align=1 + (v128.load16_splat offset=16 align=1 (i32.const 128) ) ) (drop - (v32x4.load_splat offset=16 + (v128.load32_splat offset=16 (i32.const 128) ) ) (drop - (v64x2.load_splat align=4 + (v128.load64_splat align=4 (i32.const 128) ) ) (drop - (i16x8.load8x8_s + (v128.load8x8_s (i32.const 128) ) ) (drop - (i16x8.load8x8_u + (v128.load8x8_u (i32.const 128) ) ) (drop - (i32x4.load16x4_s + (v128.load16x4_s (i32.const 128) ) ) (drop - (i32x4.load16x4_u + (v128.load16x4_u (i32.const 128) ) ) (drop - (i64x2.load32x2_s + (v128.load32x2_s (i32.const 128) ) ) (drop - (i64x2.load32x2_u + (v128.load32x2_u (i32.const 128) ) ) (drop - (v8x16.shuffle 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 + (i8x16.shuffle 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -1646,34 +1610,6 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) - (drop - (f32x4.qfma - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop - (f32x4.qfms - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop - (f64x2.qfma - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop - (f64x2.qfms - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) (memory.init 0 (i32.const 1024) (i32.const 0) @@ -2264,17 +2200,17 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i8x16.abs + (v128.any_true (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i8x16.neg + (i8x16.abs (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i8x16.any_true + (i8x16.neg (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) @@ -2299,11 +2235,6 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i16x8.any_true - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop (i16x8.all_true (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -2324,11 +2255,6 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i32x4.any_true - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop (i32x4.all_true (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -2384,16 +2310,6 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i64x2.trunc_sat_f64x2_s - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop - (i64x2.trunc_sat_f64x2_u - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop (f32x4.convert_i32x4_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -2404,52 +2320,42 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (f64x2.convert_i64x2_s - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop - (f64x2.convert_i64x2_u + (i16x8.extend_low_i8x16_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i16x8.widen_low_i8x16_s + (i16x8.extend_high_i8x16_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i16x8.widen_high_i8x16_s + (i16x8.extend_low_i8x16_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i16x8.widen_low_i8x16_u + (i16x8.extend_high_i8x16_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i16x8.widen_high_i8x16_u + (i32x4.extend_low_i16x8_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i32x4.widen_low_i16x8_s + (i32x4.extend_high_i16x8_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i32x4.widen_high_i16x8_s + (i32x4.extend_low_i16x8_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i32x4.widen_low_i16x8_u - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop - (i32x4.widen_high_i16x8_u + (i32x4.extend_high_i16x8_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) @@ -2928,13 +2834,13 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i8x16.add_saturate_s + (i8x16.add_sat_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i8x16.add_saturate_u + (i8x16.add_sat_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -2946,19 +2852,13 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i8x16.sub_saturate_s + (i8x16.sub_sat_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i8x16.sub_saturate_u - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop - (i8x16.mul + (i8x16.sub_sat_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -3000,13 +2900,13 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i16x8.add_saturate_s + (i16x8.add_sat_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i16x8.add_saturate_u + (i16x8.add_sat_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -3018,13 +2918,13 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (i16x8.sub_saturate_s + (i16x8.sub_sat_s (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) (drop - (i16x8.sub_saturate_u + (i16x8.sub_sat_u (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -3292,7 +3192,7 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (v8x16.swizzle + (i8x16.swizzle (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -3446,57 +3346,57 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} ) ) (drop - (v8x16.load_splat + (v128.load8_splat (i32.const 128) ) ) (drop - (v16x8.load_splat offset=16 align=1 + (v128.load16_splat offset=16 align=1 (i32.const 128) ) ) (drop - (v32x4.load_splat offset=16 + (v128.load32_splat offset=16 (i32.const 128) ) ) (drop - (v64x2.load_splat align=4 + (v128.load64_splat align=4 (i32.const 128) ) ) (drop - (i16x8.load8x8_s + (v128.load8x8_s (i32.const 128) ) ) (drop - (i16x8.load8x8_u + (v128.load8x8_u (i32.const 128) ) ) (drop - (i32x4.load16x4_s + (v128.load16x4_s (i32.const 128) ) ) (drop - (i32x4.load16x4_u + (v128.load16x4_u (i32.const 128) ) ) (drop - (i64x2.load32x2_s + (v128.load32x2_s (i32.const 128) ) ) (drop - (i64x2.load32x2_u + (v128.load32x2_u (i32.const 128) ) ) (drop - (v8x16.shuffle 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 + (i8x16.shuffle 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) @@ -3508,34 +3408,6 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7} (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) ) ) - (drop - (f32x4.qfma - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop - (f32x4.qfms - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop - (f64x2.qfma - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) - (drop - (f64x2.qfms - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d) - ) - ) (memory.init 0 (i32.const 1024) (i32.const 0) |