| 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 196 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 207 | 207 |
| 208 void set_bytecode_iterator( | 208 void set_bytecode_iterator( |
| 209 const interpreter::BytecodeArrayIterator* bytecode_iterator) { | 209 const interpreter::BytecodeArrayIterator* bytecode_iterator) { |
| 210 bytecode_iterator_ = bytecode_iterator; | 210 bytecode_iterator_ = bytecode_iterator; |
| 211 } | 211 } |
| 212 | 212 |
| 213 const BytecodeBranchAnalysis* branch_analysis() const { | 213 const BytecodeBranchAnalysis* branch_analysis() const { |
| 214 return branch_analysis_; | 214 return branch_analysis_; |
| 215 } | 215 } |
| 216 | 216 |
| 217 void set_branch_analysis(BytecodeBranchAnalysis* branch_analysis) { | 217 void set_branch_analysis(const BytecodeBranchAnalysis* branch_analysis) { |
| 218 branch_analysis_ = branch_analysis; | 218 branch_analysis_ = branch_analysis; |
| 219 } | 219 } |
| 220 | 220 |
| 221 #define DECLARE_VISIT_BYTECODE(name, ...) void Visit##name(); | 221 #define DECLARE_VISIT_BYTECODE(name, ...) void Visit##name(); |
| 222 BYTECODE_LIST(DECLARE_VISIT_BYTECODE) | 222 BYTECODE_LIST(DECLARE_VISIT_BYTECODE) |
| 223 #undef DECLARE_VISIT_BYTECODE | 223 #undef DECLARE_VISIT_BYTECODE |
| 224 | 224 |
| 225 Zone* local_zone_; | 225 Zone* local_zone_; |
| 226 CompilationInfo* info_; | 226 CompilationInfo* info_; |
| 227 JSGraph* jsgraph_; | 227 JSGraph* jsgraph_; |
| 228 Handle<BytecodeArray> bytecode_array_; | 228 Handle<BytecodeArray> bytecode_array_; |
| 229 Handle<HandlerTable> exception_handler_table_; | 229 Handle<HandlerTable> exception_handler_table_; |
| 230 const FrameStateFunctionInfo* frame_state_function_info_; | 230 const FrameStateFunctionInfo* frame_state_function_info_; |
| 231 const interpreter::BytecodeArrayIterator* bytecode_iterator_; | 231 const interpreter::BytecodeArrayIterator* bytecode_iterator_; |
| 232 BytecodeBranchAnalysis* branch_analysis_; // TODO(mstarzinger): Make const. | 232 const BytecodeBranchAnalysis* branch_analysis_; |
| 233 Environment* environment_; | 233 Environment* environment_; |
| 234 | 234 |
| 235 // Merge environments are snapshots of the environment at points where the | 235 // Merge environments are snapshots of the environment at points where the |
| 236 // control flow merges. This models a forward data flow propagation of all | 236 // control flow merges. This models a forward data flow propagation of all |
| 237 // values from all predecessors of the merge in question. | 237 // values from all predecessors of the merge in question. |
| 238 ZoneMap<int, Environment*> merge_environments_; | 238 ZoneMap<int, Environment*> merge_environments_; |
| 239 | 239 |
| 240 // Exception handlers currently entered by the iteration. | 240 // Exception handlers currently entered by the iteration. |
| 241 ZoneStack<ExceptionHandler> exception_handlers_; | 241 ZoneStack<ExceptionHandler> exception_handlers_; |
| 242 int current_exception_handler_; | 242 int current_exception_handler_; |
| (...skipping 14 matching lines...) Expand all Loading... |
| 257 ZoneVector<Node*> exit_controls_; | 257 ZoneVector<Node*> exit_controls_; |
| 258 | 258 |
| 259 DISALLOW_COPY_AND_ASSIGN(BytecodeGraphBuilder); | 259 DISALLOW_COPY_AND_ASSIGN(BytecodeGraphBuilder); |
| 260 }; | 260 }; |
| 261 | 261 |
| 262 } // namespace compiler | 262 } // namespace compiler |
| 263 } // namespace internal | 263 } // namespace internal |
| 264 } // namespace v8 | 264 } // namespace v8 |
| 265 | 265 |
| 266 #endif // V8_COMPILER_BYTECODE_GRAPH_BUILDER_H_ | 266 #endif // V8_COMPILER_BYTECODE_GRAPH_BUILDER_H_ |
| OLD | NEW |