diff options
Diffstat (limited to 'src/wasm/wasm-binary.cpp')
-rw-r--r-- | src/wasm/wasm-binary.cpp | 48 |
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; |