Index: src/compiler/int64-lowering.cc |
diff --git a/src/compiler/int64-lowering.cc b/src/compiler/int64-lowering.cc |
index 48f461da0e2fbb679ee00cbf274207d0e1b726db..2c32b962c3fc00d4af846adf6c9ae13f4137b8e2 100644 |
--- a/src/compiler/int64-lowering.cc |
+++ b/src/compiler/int64-lowering.cc |
@@ -274,6 +274,20 @@ void Int64Lowering::LowerNode(Node* node) { |
} |
// kExprI64Xor: |
+ case IrOpcode::kWord64Xor: { |
+ DCHECK(node->InputCount() == 2); |
+ Node* left = node->InputAt(0); |
+ Node* right = node->InputAt(1); |
+ |
+ Node* low_node = |
+ graph()->NewNode(machine()->Word32Xor(), GetReplacementLow(left), |
+ GetReplacementLow(right)); |
+ Node* high_node = |
+ graph()->NewNode(machine()->Word32Xor(), GetReplacementHigh(left), |
+ GetReplacementHigh(right)); |
+ ReplaceNode(node, low_node, high_node); |
+ break; |
+ } |
// kExprI64Shl: |
// kExprI64ShrU: |
// kExprI64ShrS: |