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 |