| OLD | NEW |
| 1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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_BYTECODE_GRAPH_BUILDER_H_ | 5 #ifndef V8_COMPILER_BYTECODE_GRAPH_BUILDER_H_ |
| 6 #define V8_COMPILER_BYTECODE_GRAPH_BUILDER_H_ | 6 #define V8_COMPILER_BYTECODE_GRAPH_BUILDER_H_ |
| 7 | 7 |
| 8 #include "src/compiler.h" | 8 #include "src/compiler.h" |
| 9 #include "src/compiler/bytecode-branch-analysis.h" | 9 #include "src/compiler/bytecode-branch-analysis.h" |
| 10 #include "src/compiler/js-graph.h" | 10 #include "src/compiler/js-graph.h" |
| (...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 153 void BuildCompareOp(const Operator* op, | 153 void BuildCompareOp(const Operator* op, |
| 154 const interpreter::BytecodeArrayIterator& iterator); | 154 const interpreter::BytecodeArrayIterator& iterator); |
| 155 void BuildDelete(const interpreter::BytecodeArrayIterator& iterator); | 155 void BuildDelete(const interpreter::BytecodeArrayIterator& iterator); |
| 156 void BuildCastOperator(const Operator* js_op, | 156 void BuildCastOperator(const Operator* js_op, |
| 157 const interpreter::BytecodeArrayIterator& iterator); | 157 const interpreter::BytecodeArrayIterator& iterator); |
| 158 | 158 |
| 159 // Control flow plumbing. | 159 // Control flow plumbing. |
| 160 void BuildJump(int source_offset, int target_offset); | 160 void BuildJump(int source_offset, int target_offset); |
| 161 void BuildJump(); | 161 void BuildJump(); |
| 162 void BuildConditionalJump(Node* condition); | 162 void BuildConditionalJump(Node* condition); |
| 163 | 163 void BuildJumpIfEqual(Node* comperand); |
| 164 // Helpers for building conditions for conditional jumps. | 164 void BuildJumpIfToBooleanEqual(Node* boolean_comperand); |
| 165 Node* BuildCondition(Node* comperand); | |
| 166 Node* BuildToBooleanCondition(Node* comperand); | |
| 167 | 165 |
| 168 // Constructing merge and loop headers. | 166 // Constructing merge and loop headers. |
| 169 void MergeEnvironmentsOfBackwardBranches(int source_offset, | 167 void MergeEnvironmentsOfBackwardBranches(int source_offset, |
| 170 int target_offset); | 168 int target_offset); |
| 171 void MergeEnvironmentsOfForwardBranches(int source_offset); | 169 void MergeEnvironmentsOfForwardBranches(int source_offset); |
| 172 void BuildLoopHeaderForBackwardBranches(int source_offset); | 170 void BuildLoopHeaderForBackwardBranches(int source_offset); |
| 173 | 171 |
| 174 // Growth increment for the temporary buffer used to construct input lists to | 172 // Growth increment for the temporary buffer used to construct input lists to |
| 175 // new nodes. | 173 // new nodes. |
| 176 static const int kInputBufferSizeIncrement = 64; | 174 static const int kInputBufferSizeIncrement = 64; |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 329 Node* accumulator_state_values_; | 327 Node* accumulator_state_values_; |
| 330 int register_base_; | 328 int register_base_; |
| 331 int accumulator_base_; | 329 int accumulator_base_; |
| 332 }; | 330 }; |
| 333 | 331 |
| 334 } // namespace compiler | 332 } // namespace compiler |
| 335 } // namespace internal | 333 } // namespace internal |
| 336 } // namespace v8 | 334 } // namespace v8 |
| 337 | 335 |
| 338 #endif // V8_COMPILER_BYTECODE_GRAPH_BUILDER_H_ | 336 #endif // V8_COMPILER_BYTECODE_GRAPH_BUILDER_H_ |
| OLD | NEW |