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