| 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 <deque> | 8 #include <deque> |
| 9 | 9 |
| 10 #include "src/compiler/common-operator.h" | 10 #include "src/compiler/common-operator.h" |
| (...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 135 // Initialize the call buffer with the InstructionOperands, nodes, etc, | 135 // Initialize the call buffer with the InstructionOperands, nodes, etc, |
| 136 // corresponding | 136 // corresponding |
| 137 // to the inputs and outputs of the call. | 137 // to the inputs and outputs of the call. |
| 138 // {call_code_immediate} to generate immediate operands to calls of code. | 138 // {call_code_immediate} to generate immediate operands to calls of code. |
| 139 // {call_address_immediate} to generate immediate operands to address calls. | 139 // {call_address_immediate} to generate immediate operands to address calls. |
| 140 void InitializeCallBuffer(Node* call, CallBuffer* buffer, | 140 void InitializeCallBuffer(Node* call, CallBuffer* buffer, |
| 141 bool call_code_immediate, | 141 bool call_code_immediate, |
| 142 bool call_address_immediate, BasicBlock* cont_node, | 142 bool call_address_immediate, BasicBlock* cont_node, |
| 143 BasicBlock* deopt_node); | 143 BasicBlock* deopt_node); |
| 144 | 144 |
| 145 FrameStateDescriptor* GetFrameStateDescriptor(Node* node); |
| 146 void AddFrameStateInputs(Node* state, |
| 147 std::vector<InstructionOperand*>* inputs, |
| 148 FrameStateDescriptor* descriptor); |
| 149 |
| 145 // =========================================================================== | 150 // =========================================================================== |
| 146 // ============= Architecture-specific graph covering methods. =============== | 151 // ============= Architecture-specific graph covering methods. =============== |
| 147 // =========================================================================== | 152 // =========================================================================== |
| 148 | 153 |
| 149 // Visit nodes in the given block and generate code. | 154 // Visit nodes in the given block and generate code. |
| 150 void VisitBlock(BasicBlock* block); | 155 void VisitBlock(BasicBlock* block); |
| 151 | 156 |
| 152 // Visit the node for the control flow at the end of the block, generating | 157 // Visit the node for the control flow at the end of the block, generating |
| 153 // code if necessary. | 158 // code if necessary. |
| 154 void VisitControl(BasicBlock* block); | 159 void VisitControl(BasicBlock* block); |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 204 Instructions instructions_; | 209 Instructions instructions_; |
| 205 BoolVector defined_; | 210 BoolVector defined_; |
| 206 BoolVector used_; | 211 BoolVector used_; |
| 207 }; | 212 }; |
| 208 | 213 |
| 209 } // namespace compiler | 214 } // namespace compiler |
| 210 } // namespace internal | 215 } // namespace internal |
| 211 } // namespace v8 | 216 } // namespace v8 |
| 212 | 217 |
| 213 #endif // V8_COMPILER_INSTRUCTION_SELECTOR_H_ | 218 #endif // V8_COMPILER_INSTRUCTION_SELECTOR_H_ |
| OLD | NEW |