| 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 #include "src/v8.h" | 5 #include "src/v8.h" |
| 6 | 6 |
| 7 #include "src/ast-expression-visitor.h" | 7 #include "src/ast-expression-visitor.h" |
| 8 | 8 |
| 9 #include "src/ast.h" | 9 #include "src/ast.h" |
| 10 #include "src/codegen.h" | 10 #include "src/codegen.h" |
| (...skipping 14 matching lines...) Expand all Loading... |
| 25 #define RECURSE_EXPRESSION(call) \ | 25 #define RECURSE_EXPRESSION(call) \ |
| 26 do { \ | 26 do { \ |
| 27 DCHECK(!HasStackOverflow()); \ | 27 DCHECK(!HasStackOverflow()); \ |
| 28 ++depth_; \ | 28 ++depth_; \ |
| 29 call; \ | 29 call; \ |
| 30 --depth_; \ | 30 --depth_; \ |
| 31 if (HasStackOverflow()) return; \ | 31 if (HasStackOverflow()) return; \ |
| 32 } while (false) | 32 } while (false) |
| 33 | 33 |
| 34 | 34 |
| 35 AstExpressionVisitor::AstExpressionVisitor(CompilationInfo* info) | 35 AstExpressionVisitor::AstExpressionVisitor(Isolate* isolate, Zone* zone, |
| 36 : compilation_info_(info), depth_(0) { | 36 FunctionLiteral* root) |
| 37 InitializeAstVisitor(info->isolate(), info->zone()); | 37 : root_(root), depth_(0) { |
| 38 InitializeAstVisitor(isolate, zone); |
| 38 } | 39 } |
| 39 | 40 |
| 40 | 41 |
| 41 void AstExpressionVisitor::Run() { | 42 void AstExpressionVisitor::Run() { RECURSE(VisitFunctionLiteral(root_)); } |
| 42 RECURSE(VisitFunctionLiteral(compilation_info_->literal())); | |
| 43 } | |
| 44 | 43 |
| 45 | 44 |
| 46 void AstExpressionVisitor::VisitVariableDeclaration(VariableDeclaration* decl) { | 45 void AstExpressionVisitor::VisitVariableDeclaration(VariableDeclaration* decl) { |
| 47 } | 46 } |
| 48 | 47 |
| 49 | 48 |
| 50 void AstExpressionVisitor::VisitFunctionDeclaration(FunctionDeclaration* decl) { | 49 void AstExpressionVisitor::VisitFunctionDeclaration(FunctionDeclaration* decl) { |
| 51 RECURSE(Visit(decl->fun())); | 50 RECURSE(Visit(decl->fun())); |
| 52 } | 51 } |
| 53 | 52 |
| (...skipping 288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 342 | 341 |
| 343 void AstExpressionVisitor::VisitSuperPropertyReference( | 342 void AstExpressionVisitor::VisitSuperPropertyReference( |
| 344 SuperPropertyReference* expr) {} | 343 SuperPropertyReference* expr) {} |
| 345 | 344 |
| 346 | 345 |
| 347 void AstExpressionVisitor::VisitSuperCallReference(SuperCallReference* expr) {} | 346 void AstExpressionVisitor::VisitSuperCallReference(SuperCallReference* expr) {} |
| 348 } | 347 } |
| 349 | 348 |
| 350 | 349 |
| 351 } // namespace v8::internal | 350 } // namespace v8::internal |
| OLD | NEW |