Index: src/compiler/wasm-compiler.cc |
diff --git a/src/compiler/wasm-compiler.cc b/src/compiler/wasm-compiler.cc |
index b8f94239206638acf94248d842d4da9cf4d6104f..e15cc38f18768c015bc4a73e4d5926a136263cbe 100644 |
--- a/src/compiler/wasm-compiler.cc |
+++ b/src/compiler/wasm-compiler.cc |
@@ -3610,6 +3610,17 @@ Node* WasmGraphBuilder::SimdOp(wasm::WasmOpcode opcode, |
return graph()->NewNode( |
jsgraph()->machine()->Uint8x16GreaterThanOrEqual(), inputs[0], |
inputs[1]); |
+ case wasm::kExprS128And: |
+ return graph()->NewNode(jsgraph()->machine()->Simd128And(), inputs[0], |
+ inputs[1]); |
+ case wasm::kExprS128Or: |
+ return graph()->NewNode(jsgraph()->machine()->Simd128Or(), inputs[0], |
+ inputs[1]); |
+ case wasm::kExprS128Xor: |
+ return graph()->NewNode(jsgraph()->machine()->Simd128Xor(), inputs[0], |
+ inputs[1]); |
+ case wasm::kExprS128Not: |
+ return graph()->NewNode(jsgraph()->machine()->Simd128Not(), inputs[0]); |
case wasm::kExprS32x4Select: |
return graph()->NewNode(jsgraph()->machine()->Simd32x4Select(), inputs[0], |
inputs[1], inputs[2]); |
@@ -3619,17 +3630,57 @@ Node* WasmGraphBuilder::SimdOp(wasm::WasmOpcode opcode, |
case wasm::kExprS8x16Select: |
return graph()->NewNode(jsgraph()->machine()->Simd8x16Select(), inputs[0], |
inputs[1], inputs[2]); |
- case wasm::kExprS128And: |
- return graph()->NewNode(jsgraph()->machine()->Simd128And(), inputs[0], |
+ case wasm::kExprS1x4And: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x4And(), inputs[0], |
inputs[1]); |
- case wasm::kExprS128Or: |
- return graph()->NewNode(jsgraph()->machine()->Simd128Or(), inputs[0], |
+ case wasm::kExprS1x4Or: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x4Or(), inputs[0], |
inputs[1]); |
- case wasm::kExprS128Xor: |
- return graph()->NewNode(jsgraph()->machine()->Simd128Xor(), inputs[0], |
+ case wasm::kExprS1x4Xor: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x4Xor(), inputs[0], |
inputs[1]); |
- case wasm::kExprS128Not: |
- return graph()->NewNode(jsgraph()->machine()->Simd128Not(), inputs[0]); |
+ case wasm::kExprS1x4Not: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x4Not(), inputs[0]); |
+ case wasm::kExprS1x4AnyTrue: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x4AnyTrue(), |
+ inputs[0]); |
+ case wasm::kExprS1x4AllTrue: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x4AllTrue(), |
+ inputs[0]); |
+ case wasm::kExprS1x8And: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x8And(), inputs[0], |
+ inputs[1]); |
+ case wasm::kExprS1x8Or: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x8Or(), inputs[0], |
+ inputs[1]); |
+ case wasm::kExprS1x8Xor: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x8Xor(), inputs[0], |
+ inputs[1]); |
+ case wasm::kExprS1x8Not: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x8Not(), inputs[0]); |
+ case wasm::kExprS1x8AnyTrue: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x8AnyTrue(), |
+ inputs[0]); |
+ case wasm::kExprS1x8AllTrue: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x8AllTrue(), |
+ inputs[0]); |
+ case wasm::kExprS1x16And: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x16And(), inputs[0], |
+ inputs[1]); |
+ case wasm::kExprS1x16Or: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x16Or(), inputs[0], |
+ inputs[1]); |
+ case wasm::kExprS1x16Xor: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x16Xor(), inputs[0], |
+ inputs[1]); |
+ case wasm::kExprS1x16Not: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x16Not(), inputs[0]); |
+ case wasm::kExprS1x16AnyTrue: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x16AnyTrue(), |
+ inputs[0]); |
+ case wasm::kExprS1x16AllTrue: |
+ return graph()->NewNode(jsgraph()->machine()->Simd1x16AllTrue(), |
+ inputs[0]); |
default: |
return graph()->NewNode(UnsupportedOpcode(opcode), nullptr); |
} |