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_AST_GRAPH_BUILDER_H_ | 5 #ifndef V8_COMPILER_AST_GRAPH_BUILDER_H_ |
6 #define V8_COMPILER_AST_GRAPH_BUILDER_H_ | 6 #define V8_COMPILER_AST_GRAPH_BUILDER_H_ |
7 | 7 |
8 #include "src/v8.h" | 8 #include "src/v8.h" |
9 | 9 |
10 #include "src/ast.h" | 10 #include "src/ast.h" |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
124 // Stack of breakable statements entered by the visitor. | 124 // Stack of breakable statements entered by the visitor. |
125 BreakableScope* breakable_; | 125 BreakableScope* breakable_; |
126 | 126 |
127 // Stack of context objects pushed onto the chain by the visitor. | 127 // Stack of context objects pushed onto the chain by the visitor. |
128 ContextScope* execution_context_; | 128 ContextScope* execution_context_; |
129 | 129 |
130 // Nodes representing values in the activation record. | 130 // Nodes representing values in the activation record. |
131 SetOncePointer<Node> function_closure_; | 131 SetOncePointer<Node> function_closure_; |
132 SetOncePointer<Node> function_context_; | 132 SetOncePointer<Node> function_context_; |
133 | 133 |
134 CompilationInfo* info() { return info_; } | 134 CompilationInfo* info() const { return info_; } |
135 StrictMode strict_mode() { return info()->strict_mode(); } | 135 inline StrictMode strict_mode() const; |
136 JSGraph* jsgraph() { return jsgraph_; } | 136 JSGraph* jsgraph() { return jsgraph_; } |
137 JSOperatorBuilder* javascript() { return jsgraph_->javascript(); } | 137 JSOperatorBuilder* javascript() { return jsgraph_->javascript(); } |
138 ZoneList<Handle<Object> >* globals() { return &globals_; } | 138 ZoneList<Handle<Object> >* globals() { return &globals_; } |
139 | 139 |
140 // Current scope during visitation. | 140 // Current scope during visitation. |
141 inline Scope* current_scope() const; | 141 inline Scope* current_scope() const; |
142 | 142 |
143 // Process arguments to a call by popping {arity} elements off the operand | 143 // Process arguments to a call by popping {arity} elements off the operand |
144 // stack and build a call node using the given call operator. | 144 // stack and build a call node using the given call operator. |
145 Node* ProcessArguments(const Operator* op, int arity); | 145 Node* ProcessArguments(const Operator* op, int arity); |
(...skipping 279 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
425 }; | 425 }; |
426 | 426 |
427 Scope* AstGraphBuilder::current_scope() const { | 427 Scope* AstGraphBuilder::current_scope() const { |
428 return execution_context_->scope(); | 428 return execution_context_->scope(); |
429 } | 429 } |
430 } | 430 } |
431 } | 431 } |
432 } // namespace v8::internal::compiler | 432 } // namespace v8::internal::compiler |
433 | 433 |
434 #endif // V8_COMPILER_AST_GRAPH_BUILDER_H_ | 434 #endif // V8_COMPILER_AST_GRAPH_BUILDER_H_ |
OLD | NEW |