Index: src/compiler/machine-operator-reducer.h |
diff --git a/src/compiler/machine-operator-reducer.h b/src/compiler/machine-operator-reducer.h |
index 2d8d30e80da1b762176c21e2fd618bad452e138b..574f45c0b3a9bb7ba08f90667aaba5316d4e97e4 100644 |
--- a/src/compiler/machine-operator-reducer.h |
+++ b/src/compiler/machine-operator-reducer.h |
@@ -32,7 +32,10 @@ class MachineOperatorReducer final : public Reducer { |
Node* Int32Constant(int32_t value); |
Node* Int64Constant(int64_t value); |
Node* Uint32Constant(uint32_t value) { |
- return Int32Constant(bit_cast<uint32_t>(value)); |
+ return Int32Constant(bit_cast<int32_t>(value)); |
+ } |
+ Node* Uint64Constant(uint64_t value) { |
+ return Int64Constant(bit_cast<int64_t>(value)); |
} |
Node* Float64Mul(Node* lhs, Node* rhs); |
Node* Float64PowHalf(Node* value); |
@@ -67,7 +70,9 @@ class MachineOperatorReducer final : public Reducer { |
} |
Reduction ReduceInt32Add(Node* node); |
+ Reduction ReduceInt64Add(Node* node); |
Reduction ReduceInt32Sub(Node* node); |
+ Reduction ReduceInt64Sub(Node* node); |
Reduction ReduceInt32Div(Node* node); |
Reduction ReduceUint32Div(Node* node); |
Reduction ReduceInt32Mod(Node* node); |
@@ -76,8 +81,11 @@ class MachineOperatorReducer final : public Reducer { |
Reduction ReduceProjection(size_t index, Node* node); |
Reduction ReduceWord32Shifts(Node* node); |
Reduction ReduceWord32Shl(Node* node); |
+ Reduction ReduceWord64Shl(Node* node); |
Reduction ReduceWord32Shr(Node* node); |
+ Reduction ReduceWord64Shr(Node* node); |
Reduction ReduceWord32Sar(Node* node); |
+ Reduction ReduceWord64Sar(Node* node); |
Reduction ReduceWord32And(Node* node); |
Reduction TryMatchWord32Ror(Node* node); |
Reduction ReduceWord32Or(Node* node); |