OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef V8_COMPILER_INSTRUCTION_SELECTOR_H_ | 5 #ifndef V8_COMPILER_INSTRUCTION_SELECTOR_H_ |
6 #define V8_COMPILER_INSTRUCTION_SELECTOR_H_ | 6 #define V8_COMPILER_INSTRUCTION_SELECTOR_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 | 9 |
10 #include "src/compiler/common-operator.h" | 10 #include "src/compiler/common-operator.h" |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
107 InstructionOperand* outputs, size_t input_count, | 107 InstructionOperand* outputs, size_t input_count, |
108 InstructionOperand* inputs, size_t temp_count = 0, | 108 InstructionOperand* inputs, size_t temp_count = 0, |
109 InstructionOperand* temps = nullptr); | 109 InstructionOperand* temps = nullptr); |
110 Instruction* Emit(Instruction* instr); | 110 Instruction* Emit(Instruction* instr); |
111 | 111 |
112 // =========================================================================== | 112 // =========================================================================== |
113 // ===== Architecture-independent deoptimization exit emission methods. ====== | 113 // ===== Architecture-independent deoptimization exit emission methods. ====== |
114 // =========================================================================== | 114 // =========================================================================== |
115 | 115 |
116 Instruction* EmitDeoptimize(InstructionCode opcode, InstructionOperand output, | 116 Instruction* EmitDeoptimize(InstructionCode opcode, InstructionOperand output, |
117 InstructionOperand a, DeoptimizeReason reason, | 117 InstructionOperand a, DeoptimizeKind kind, |
118 Node* frame_state); | 118 DeoptimizeReason reason, Node* frame_state); |
119 Instruction* EmitDeoptimize(InstructionCode opcode, InstructionOperand output, | 119 Instruction* EmitDeoptimize(InstructionCode opcode, InstructionOperand output, |
120 InstructionOperand a, InstructionOperand b, | 120 InstructionOperand a, InstructionOperand b, |
121 DeoptimizeReason reason, Node* frame_state); | 121 DeoptimizeKind kind, DeoptimizeReason reason, |
| 122 Node* frame_state); |
122 Instruction* EmitDeoptimize(InstructionCode opcode, size_t output_count, | 123 Instruction* EmitDeoptimize(InstructionCode opcode, size_t output_count, |
123 InstructionOperand* outputs, size_t input_count, | 124 InstructionOperand* outputs, size_t input_count, |
124 InstructionOperand* inputs, | 125 InstructionOperand* inputs, DeoptimizeKind kind, |
125 DeoptimizeReason reason, Node* frame_state); | 126 DeoptimizeReason reason, Node* frame_state); |
126 | 127 |
127 // =========================================================================== | 128 // =========================================================================== |
128 // ============== Architecture-independent CPU feature methods. ============== | 129 // ============== Architecture-independent CPU feature methods. ============== |
129 // =========================================================================== | 130 // =========================================================================== |
130 | 131 |
131 class Features final { | 132 class Features final { |
132 public: | 133 public: |
133 Features() : bits_(0) {} | 134 Features() : bits_(0) {} |
134 explicit Features(unsigned bits) : bits_(bits) {} | 135 explicit Features(unsigned bits) : bits_(bits) {} |
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
389 EnableSerialization enable_serialization_; | 390 EnableSerialization enable_serialization_; |
390 Frame* frame_; | 391 Frame* frame_; |
391 bool instruction_selection_failed_; | 392 bool instruction_selection_failed_; |
392 }; | 393 }; |
393 | 394 |
394 } // namespace compiler | 395 } // namespace compiler |
395 } // namespace internal | 396 } // namespace internal |
396 } // namespace v8 | 397 } // namespace v8 |
397 | 398 |
398 #endif // V8_COMPILER_INSTRUCTION_SELECTOR_H_ | 399 #endif // V8_COMPILER_INSTRUCTION_SELECTOR_H_ |
OLD | NEW |