Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Side by Side Diff: src/ast/ast.h

Issue 2654113002: [ast] Annotate CallRuntime ast node (Closed)
Patch Set: move to ast.cc Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | src/ast/ast.cc » ('j') | src/ast/ast.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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_AST_AST_H_ 5 #ifndef V8_AST_AST_H_
6 #define V8_AST_AST_H_ 6 #define V8_AST_AST_H_
7 7
8 #include "src/ast/ast-types.h" 8 #include "src/ast/ast-types.h"
9 #include "src/ast/ast-value-factory.h" 9 #include "src/ast/ast-value-factory.h"
10 #include "src/ast/modules.h" 10 #include "src/ast/modules.h"
11 #include "src/ast/variables.h" 11 #include "src/ast/variables.h"
12 #include "src/bailout-reason.h" 12 #include "src/bailout-reason.h"
13 #include "src/base/flags.h" 13 #include "src/base/flags.h"
14 #include "src/factory.h" 14 #include "src/factory.h"
15 #include "src/globals.h" 15 #include "src/globals.h"
16 #include "src/isolate.h" 16 #include "src/isolate.h"
17 #include "src/label.h" 17 #include "src/label.h"
18 #include "src/list.h" 18 #include "src/list.h"
19 #include "src/parsing/token.h" 19 #include "src/parsing/token.h"
20 #include "src/runtime/runtime.h" 20 #include "src/runtime/runtime.h"
21 #include "src/small-pointer-list.h" 21 #include "src/small-pointer-list.h"
22 #include "src/utils.h"
23 22
24 namespace v8 { 23 namespace v8 {
25 namespace internal { 24 namespace internal {
26 25
27 // The abstract syntax tree is an intermediate, light-weight 26 // The abstract syntax tree is an intermediate, light-weight
28 // representation of the parsed JavaScript code suitable for 27 // representation of the parsed JavaScript code suitable for
29 // compilation to native code. 28 // compilation to native code.
30 29
31 // Nodes are allocated in a separate zone, which allows faster 30 // Nodes are allocated in a separate zone, which allows faster
32 // allocation and constant-time deallocation of the entire syntax 31 // allocation and constant-time deallocation of the entire syntax
(...skipping 2015 matching lines...) Expand 10 before | Expand all | Expand 10 after
2048 DCHECK(is_jsruntime()); 2047 DCHECK(is_jsruntime());
2049 context_index_ = index; 2048 context_index_ = index;
2050 } 2049 }
2051 const Runtime::Function* function() const { 2050 const Runtime::Function* function() const {
2052 DCHECK(!is_jsruntime()); 2051 DCHECK(!is_jsruntime());
2053 return function_; 2052 return function_;
2054 } 2053 }
2055 2054
2056 static int num_ids() { return parent_num_ids() + 1; } 2055 static int num_ids() { return parent_num_ids() + 1; }
2057 BailoutId CallId() { return BailoutId(local_id(0)); } 2056 BailoutId CallId() { return BailoutId(local_id(0)); }
2058 2057 const char* debug_name();
2059 const char* debug_name() {
2060 return is_jsruntime() ? "(context function)" : function_->name;
2061 }
2062 2058
2063 private: 2059 private:
2064 friend class AstNodeFactory; 2060 friend class AstNodeFactory;
2065 2061
2066 CallRuntime(const Runtime::Function* function, 2062 CallRuntime(const Runtime::Function* function,
2067 ZoneList<Expression*>* arguments, int pos) 2063 ZoneList<Expression*>* arguments, int pos)
2068 : Expression(pos, kCallRuntime), 2064 : Expression(pos, kCallRuntime),
2069 function_(function), 2065 function_(function),
2070 arguments_(arguments) {} 2066 arguments_(arguments) {}
2071 CallRuntime(int context_index, ZoneList<Expression*>* arguments, int pos) 2067 CallRuntime(int context_index, ZoneList<Expression*>* arguments, int pos)
(...skipping 1584 matching lines...) Expand 10 before | Expand all | Expand 10 after
3656 : NULL; \ 3652 : NULL; \
3657 } 3653 }
3658 AST_NODE_LIST(DECLARE_NODE_FUNCTIONS) 3654 AST_NODE_LIST(DECLARE_NODE_FUNCTIONS)
3659 #undef DECLARE_NODE_FUNCTIONS 3655 #undef DECLARE_NODE_FUNCTIONS
3660 3656
3661 3657
3662 } // namespace internal 3658 } // namespace internal
3663 } // namespace v8 3659 } // namespace v8
3664 3660
3665 #endif // V8_AST_AST_H_ 3661 #endif // V8_AST_AST_H_
OLDNEW
« no previous file with comments | « no previous file | src/ast/ast.cc » ('j') | src/ast/ast.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698