summaryrefslogtreecommitdiff
path: root/src/wasm/wasm-binary.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/wasm/wasm-binary.cpp')
-rw-r--r--src/wasm/wasm-binary.cpp48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/wasm/wasm-binary.cpp b/src/wasm/wasm-binary.cpp
index 8446f3c17..cb67d1556 100644
--- a/src/wasm/wasm-binary.cpp
+++ b/src/wasm/wasm-binary.cpp
@@ -3851,6 +3851,22 @@ bool WasmBinaryBuilder::maybeVisitSIMDBinary(Expression*& out, uint32_t code) {
curr = allocator.alloc<Binary>();
curr->op = MulVecI8x16;
break;
+ case BinaryConsts::I8x16MinS:
+ curr = allocator.alloc<Binary>();
+ curr->op = MinSVecI8x16;
+ break;
+ case BinaryConsts::I8x16MinU:
+ curr = allocator.alloc<Binary>();
+ curr->op = MinUVecI8x16;
+ break;
+ case BinaryConsts::I8x16MaxS:
+ curr = allocator.alloc<Binary>();
+ curr->op = MaxSVecI8x16;
+ break;
+ case BinaryConsts::I8x16MaxU:
+ curr = allocator.alloc<Binary>();
+ curr->op = MaxUVecI8x16;
+ break;
case BinaryConsts::I16x8Add:
curr = allocator.alloc<Binary>();
curr->op = AddVecI16x8;
@@ -3879,6 +3895,22 @@ bool WasmBinaryBuilder::maybeVisitSIMDBinary(Expression*& out, uint32_t code) {
curr = allocator.alloc<Binary>();
curr->op = MulVecI16x8;
break;
+ case BinaryConsts::I16x8MinS:
+ curr = allocator.alloc<Binary>();
+ curr->op = MinSVecI16x8;
+ break;
+ case BinaryConsts::I16x8MinU:
+ curr = allocator.alloc<Binary>();
+ curr->op = MinUVecI16x8;
+ break;
+ case BinaryConsts::I16x8MaxS:
+ curr = allocator.alloc<Binary>();
+ curr->op = MaxSVecI16x8;
+ break;
+ case BinaryConsts::I16x8MaxU:
+ curr = allocator.alloc<Binary>();
+ curr->op = MaxUVecI16x8;
+ break;
case BinaryConsts::I32x4Add:
curr = allocator.alloc<Binary>();
curr->op = AddVecI32x4;
@@ -3891,6 +3923,22 @@ bool WasmBinaryBuilder::maybeVisitSIMDBinary(Expression*& out, uint32_t code) {
curr = allocator.alloc<Binary>();
curr->op = MulVecI32x4;
break;
+ case BinaryConsts::I32x4MinS:
+ curr = allocator.alloc<Binary>();
+ curr->op = MinSVecI32x4;
+ break;
+ case BinaryConsts::I32x4MinU:
+ curr = allocator.alloc<Binary>();
+ curr->op = MinUVecI32x4;
+ break;
+ case BinaryConsts::I32x4MaxS:
+ curr = allocator.alloc<Binary>();
+ curr->op = MaxSVecI32x4;
+ break;
+ case BinaryConsts::I32x4MaxU:
+ curr = allocator.alloc<Binary>();
+ curr->op = MaxUVecI32x4;
+ break;
case BinaryConsts::I64x2Add:
curr = allocator.alloc<Binary>();
curr->op = AddVecI64x2;