summaryrefslogtreecommitdiff
path: root/deps/v8/src/compiler/machine-operator-reducer.h
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/compiler/machine-operator-reducer.h')
-rw-r--r--deps/v8/src/compiler/machine-operator-reducer.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/deps/v8/src/compiler/machine-operator-reducer.h b/deps/v8/src/compiler/machine-operator-reducer.h
index 7f8ff1a5fd..167bf7efd3 100644
--- a/deps/v8/src/compiler/machine-operator-reducer.h
+++ b/deps/v8/src/compiler/machine-operator-reducer.h
@@ -32,8 +32,13 @@ 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);
Node* Word32And(Node* lhs, Node* rhs);
Node* Word32And(Node* lhs, uint32_t rhs) {
return Word32And(lhs, Uint32Constant(rhs));
@@ -65,17 +70,22 @@ 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);
Reduction ReduceUint32Mod(Node* node);
- Reduction ReduceTruncateFloat64ToInt32(Node* node);
Reduction ReduceStore(Node* node);
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 ReduceWord32Or(Node* node);
Reduction ReduceFloat64InsertLowWord32(Node* node);