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, DeoptimizeKind kind, | 117 InstructionOperand a, DeoptimizeReason reason, |
118 DeoptimizeReason reason, Node* frame_state); | 118 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 DeoptimizeKind kind, DeoptimizeReason reason, | 121 DeoptimizeReason reason, Node* frame_state); |
122 Node* frame_state); | |
123 Instruction* EmitDeoptimize(InstructionCode opcode, size_t output_count, | 122 Instruction* EmitDeoptimize(InstructionCode opcode, size_t output_count, |
124 InstructionOperand* outputs, size_t input_count, | 123 InstructionOperand* outputs, size_t input_count, |
125 InstructionOperand* inputs, DeoptimizeKind kind, | 124 InstructionOperand* inputs, |
126 DeoptimizeReason reason, Node* frame_state); | 125 DeoptimizeReason reason, Node* frame_state); |
127 | 126 |
128 // =========================================================================== | 127 // =========================================================================== |
129 // ============== Architecture-independent CPU feature methods. ============== | 128 // ============== Architecture-independent CPU feature methods. ============== |
130 // =========================================================================== | 129 // =========================================================================== |
131 | 130 |
132 class Features final { | 131 class Features final { |
133 public: | 132 public: |
134 Features() : bits_(0) {} | 133 Features() : bits_(0) {} |
135 explicit Features(unsigned bits) : bits_(bits) {} | 134 explicit Features(unsigned bits) : bits_(bits) {} |
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
390 EnableSerialization enable_serialization_; | 389 EnableSerialization enable_serialization_; |
391 Frame* frame_; | 390 Frame* frame_; |
392 bool instruction_selection_failed_; | 391 bool instruction_selection_failed_; |
393 }; | 392 }; |
394 | 393 |
395 } // namespace compiler | 394 } // namespace compiler |
396 } // namespace internal | 395 } // namespace internal |
397 } // namespace v8 | 396 } // namespace v8 |
398 | 397 |
399 #endif // V8_COMPILER_INSTRUCTION_SELECTOR_H_ | 398 #endif // V8_COMPILER_INSTRUCTION_SELECTOR_H_ |
OLD | NEW |