| Index: src/compiler/operator-properties.cc
|
| diff --git a/src/compiler/operator-properties.cc b/src/compiler/operator-properties.cc
|
| index cfff869c4470e36103a168484e5b0bcf2c3004d3..2078abf450e763391cb077b5eeb68c93e9a74b8e 100644
|
| --- a/src/compiler/operator-properties.cc
|
| +++ b/src/compiler/operator-properties.cc
|
| @@ -42,6 +42,11 @@ int OperatorProperties::GetFrameStateInputCount(const Operator* op) {
|
| case IrOpcode::kJSDivide:
|
| case IrOpcode::kJSModulus:
|
|
|
| + // Bitwise operations
|
| + case IrOpcode::kJSBitwiseOr:
|
| + case IrOpcode::kJSBitwiseXor:
|
| + case IrOpcode::kJSBitwiseAnd:
|
| +
|
| // Shift operations
|
| case IrOpcode::kJSShiftLeft:
|
| case IrOpcode::kJSShiftRight:
|
| @@ -96,14 +101,6 @@ int OperatorProperties::GetFrameStateInputCount(const Operator* op) {
|
| case IrOpcode::kJSStackCheck:
|
| return 1;
|
|
|
| - // Binary operators that can deopt in the middle the operation (e.g.,
|
| - // as a result of lazy deopt in ToNumber conversion) need a second frame
|
| - // state so that we can resume before the operation.
|
| - case IrOpcode::kJSBitwiseAnd:
|
| - case IrOpcode::kJSBitwiseOr:
|
| - case IrOpcode::kJSBitwiseXor:
|
| - return 2;
|
| -
|
| default:
|
| return 0;
|
| }
|
|
|