| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "src/compiler/simplified-operator.h" | 5 #include "src/compiler/simplified-operator.h" |
| 6 | 6 |
| 7 #include "src/base/lazy-instance.h" | 7 #include "src/base/lazy-instance.h" |
| 8 #include "src/compiler/opcodes.h" | 8 #include "src/compiler/opcodes.h" |
| 9 #include "src/compiler/operator.h" | 9 #include "src/compiler/operator.h" |
| 10 #include "src/compiler/types.h" | 10 #include "src/compiler/types.h" |
| (...skipping 314 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 325 op->opcode() == IrOpcode::kSpeculativeNumberShiftRightLogical || | 325 op->opcode() == IrOpcode::kSpeculativeNumberShiftRightLogical || |
| 326 op->opcode() == IrOpcode::kSpeculativeNumberBitwiseAnd || | 326 op->opcode() == IrOpcode::kSpeculativeNumberBitwiseAnd || |
| 327 op->opcode() == IrOpcode::kSpeculativeNumberBitwiseOr || | 327 op->opcode() == IrOpcode::kSpeculativeNumberBitwiseOr || |
| 328 op->opcode() == IrOpcode::kSpeculativeNumberBitwiseXor || | 328 op->opcode() == IrOpcode::kSpeculativeNumberBitwiseXor || |
| 329 op->opcode() == IrOpcode::kSpeculativeNumberEqual || | 329 op->opcode() == IrOpcode::kSpeculativeNumberEqual || |
| 330 op->opcode() == IrOpcode::kSpeculativeNumberLessThan || | 330 op->opcode() == IrOpcode::kSpeculativeNumberLessThan || |
| 331 op->opcode() == IrOpcode::kSpeculativeNumberLessThanOrEqual); | 331 op->opcode() == IrOpcode::kSpeculativeNumberLessThanOrEqual); |
| 332 return OpParameter<NumberOperationHint>(op); | 332 return OpParameter<NumberOperationHint>(op); |
| 333 } | 333 } |
| 334 | 334 |
| 335 PretenureFlag PretenureFlagOf(const Operator* op) { |
| 336 DCHECK_EQ(IrOpcode::kAllocate, op->opcode()); |
| 337 return OpParameter<PretenureFlag>(op); |
| 338 } |
| 339 |
| 335 #define PURE_OP_LIST(V) \ | 340 #define PURE_OP_LIST(V) \ |
| 336 V(BooleanNot, Operator::kNoProperties, 1, 0) \ | 341 V(BooleanNot, Operator::kNoProperties, 1, 0) \ |
| 337 V(NumberEqual, Operator::kCommutative, 2, 0) \ | 342 V(NumberEqual, Operator::kCommutative, 2, 0) \ |
| 338 V(NumberLessThan, Operator::kNoProperties, 2, 0) \ | 343 V(NumberLessThan, Operator::kNoProperties, 2, 0) \ |
| 339 V(NumberLessThanOrEqual, Operator::kNoProperties, 2, 0) \ | 344 V(NumberLessThanOrEqual, Operator::kNoProperties, 2, 0) \ |
| 340 V(NumberAdd, Operator::kCommutative, 2, 0) \ | 345 V(NumberAdd, Operator::kCommutative, 2, 0) \ |
| 341 V(NumberSubtract, Operator::kNoProperties, 2, 0) \ | 346 V(NumberSubtract, Operator::kNoProperties, 2, 0) \ |
| 342 V(NumberMultiply, Operator::kCommutative, 2, 0) \ | 347 V(NumberMultiply, Operator::kCommutative, 2, 0) \ |
| 343 V(NumberDivide, Operator::kNoProperties, 2, 0) \ | 348 V(NumberDivide, Operator::kNoProperties, 2, 0) \ |
| 344 V(NumberModulus, Operator::kNoProperties, 2, 0) \ | 349 V(NumberModulus, Operator::kNoProperties, 2, 0) \ |
| (...skipping 460 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 805 Operator::kNoDeopt | Operator::kNoThrow | properties, \ | 810 Operator::kNoDeopt | Operator::kNoThrow | properties, \ |
| 806 #Name, value_input_count, 1, control_input_count, \ | 811 #Name, value_input_count, 1, control_input_count, \ |
| 807 output_count, 1, 0, access); \ | 812 output_count, 1, 0, access); \ |
| 808 } | 813 } |
| 809 ACCESS_OP_LIST(ACCESS) | 814 ACCESS_OP_LIST(ACCESS) |
| 810 #undef ACCESS | 815 #undef ACCESS |
| 811 | 816 |
| 812 } // namespace compiler | 817 } // namespace compiler |
| 813 } // namespace internal | 818 } // namespace internal |
| 814 } // namespace v8 | 819 } // namespace v8 |
| OLD | NEW |