From de0db0f59839c9083a126407c983363ad5b80aaf Mon Sep 17 00:00:00 2001 From: "kmillikin@chromium.org" Date: Wed, 9 Nov 2011 11:32:54 +0000 Subject: [PATCH] Remove ast-inl.h. This file is not necessary. R=svenpanne@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/8509005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9924 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/ast-inl.h | 131 ---------------------------------------------------------- src/ast.cc | 15 +++++++ src/ast.h | 70 ++++++++++++++++++++++++++----- src/parser.cc | 2 +- 4 files changed, 75 insertions(+), 143 deletions(-) delete mode 100644 src/ast-inl.h diff --git a/src/ast-inl.h b/src/ast-inl.h deleted file mode 100644 index f8b460d..0000000 --- a/src/ast-inl.h +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright 2011 the V8 project authors. All rights reserved. -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -#ifndef V8_AST_INL_H_ -#define V8_AST_INL_H_ - -#include "v8.h" - -#include "ast.h" -#include "scopes.h" - -namespace v8 { -namespace internal { - - -SwitchStatement::SwitchStatement(Isolate* isolate, - ZoneStringList* labels) - : BreakableStatement(isolate, labels, TARGET_FOR_ANONYMOUS), - tag_(NULL), cases_(NULL) { -} - - -Block::Block(Isolate* isolate, - ZoneStringList* labels, - int capacity, - bool is_initializer_block) - : BreakableStatement(isolate, labels, TARGET_FOR_NAMED_ONLY), - statements_(capacity), - is_initializer_block_(is_initializer_block), - block_scope_(NULL) { -} - - -BreakableStatement::BreakableStatement(Isolate* isolate, - ZoneStringList* labels, - Type type) - : labels_(labels), - type_(type), - entry_id_(GetNextId(isolate)), - exit_id_(GetNextId(isolate)) { - ASSERT(labels == NULL || labels->length() > 0); -} - - -IterationStatement::IterationStatement(Isolate* isolate, ZoneStringList* labels) - : BreakableStatement(isolate, labels, TARGET_FOR_ANONYMOUS), - body_(NULL), - continue_target_(), - osr_entry_id_(GetNextId(isolate)) { -} - - -DoWhileStatement::DoWhileStatement(Isolate* isolate, ZoneStringList* labels) - : IterationStatement(isolate, labels), - cond_(NULL), - condition_position_(-1), - continue_id_(GetNextId(isolate)), - back_edge_id_(GetNextId(isolate)) { -} - - -WhileStatement::WhileStatement(Isolate* isolate, ZoneStringList* labels) - : IterationStatement(isolate, labels), - cond_(NULL), - may_have_function_literal_(true), - body_id_(GetNextId(isolate)) { -} - - -ForStatement::ForStatement(Isolate* isolate, ZoneStringList* labels) - : IterationStatement(isolate, labels), - init_(NULL), - cond_(NULL), - next_(NULL), - may_have_function_literal_(true), - loop_variable_(NULL), - continue_id_(GetNextId(isolate)), - body_id_(GetNextId(isolate)) { -} - - -ForInStatement::ForInStatement(Isolate* isolate, ZoneStringList* labels) - : IterationStatement(isolate, labels), - each_(NULL), - enumerable_(NULL), - assignment_id_(GetNextId(isolate)) { -} - - -int FunctionLiteral::start_position() const { - return scope()->start_position(); -} - - -int FunctionLiteral::end_position() const { - return scope()->end_position(); -} - - -StrictModeFlag FunctionLiteral::strict_mode_flag() const { - return scope()->strict_mode_flag(); -} - - -} } // namespace v8::internal - -#endif // V8_AST_INL_H_ diff --git a/src/ast.cc b/src/ast.cc index d5282d2..1429e2a 100644 --- a/src/ast.cc +++ b/src/ast.cc @@ -157,6 +157,21 @@ bool FunctionLiteral::AllowsLazyCompilation() { } +int FunctionLiteral::start_position() const { + return scope()->start_position(); +} + + +int FunctionLiteral::end_position() const { + return scope()->end_position(); +} + + +StrictModeFlag FunctionLiteral::strict_mode_flag() const { + return scope()->strict_mode_flag(); +} + + ObjectLiteral::Property::Property(Literal* key, Expression* value) { emit_store_ = true; key_ = key; diff --git a/src/ast.h b/src/ast.h index 295257a..30355c2 100644 --- a/src/ast.h +++ b/src/ast.h @@ -335,7 +335,14 @@ class BreakableStatement: public Statement { int ExitId() const { return exit_id_; } protected: - BreakableStatement(Isolate* isolate, ZoneStringList* labels, Type type); + BreakableStatement(Isolate* isolate, ZoneStringList* labels, Type type) + : labels_(labels), + type_(type), + entry_id_(GetNextId(isolate)), + exit_id_(GetNextId(isolate)) { + ASSERT(labels == NULL || labels->length() > 0); + } + private: ZoneStringList* labels_; @@ -348,10 +355,16 @@ class BreakableStatement: public Statement { class Block: public BreakableStatement { public: - inline Block(Isolate* isolate, - ZoneStringList* labels, - int capacity, - bool is_initializer_block); + Block(Isolate* isolate, + ZoneStringList* labels, + int capacity, + bool is_initializer_block) + : BreakableStatement(isolate, labels, TARGET_FOR_NAMED_ONLY), + statements_(capacity), + is_initializer_block_(is_initializer_block), + block_scope_(NULL) { + } + DECLARE_NODE_TYPE(Block) @@ -424,7 +437,12 @@ class IterationStatement: public BreakableStatement { Label* continue_target() { return &continue_target_; } protected: - inline IterationStatement(Isolate* isolate, ZoneStringList* labels); + IterationStatement(Isolate* isolate, ZoneStringList* labels) + : BreakableStatement(isolate, labels, TARGET_FOR_ANONYMOUS), + body_(NULL), + continue_target_(), + osr_entry_id_(GetNextId(isolate)) { + } void Initialize(Statement* body) { body_ = body; @@ -439,7 +457,13 @@ class IterationStatement: public BreakableStatement { class DoWhileStatement: public IterationStatement { public: - inline DoWhileStatement(Isolate* isolate, ZoneStringList* labels); + DoWhileStatement(Isolate* isolate, ZoneStringList* labels) + : IterationStatement(isolate, labels), + cond_(NULL), + condition_position_(-1), + continue_id_(GetNextId(isolate)), + back_edge_id_(GetNextId(isolate)) { + } DECLARE_NODE_TYPE(DoWhileStatement) @@ -472,7 +496,12 @@ class DoWhileStatement: public IterationStatement { class WhileStatement: public IterationStatement { public: - inline WhileStatement(Isolate* isolate, ZoneStringList* labels); + WhileStatement(Isolate* isolate, ZoneStringList* labels) + : IterationStatement(isolate, labels), + cond_(NULL), + may_have_function_literal_(true), + body_id_(GetNextId(isolate)) { + } DECLARE_NODE_TYPE(WhileStatement) @@ -505,7 +534,16 @@ class WhileStatement: public IterationStatement { class ForStatement: public IterationStatement { public: - inline ForStatement(Isolate* isolate, ZoneStringList* labels); + ForStatement(Isolate* isolate, ZoneStringList* labels) + : IterationStatement(isolate, labels), + init_(NULL), + cond_(NULL), + next_(NULL), + may_have_function_literal_(true), + loop_variable_(NULL), + continue_id_(GetNextId(isolate)), + body_id_(GetNextId(isolate)) { + } DECLARE_NODE_TYPE(ForStatement) @@ -554,7 +592,12 @@ class ForStatement: public IterationStatement { class ForInStatement: public IterationStatement { public: - inline ForInStatement(Isolate* isolate, ZoneStringList* labels); + ForInStatement(Isolate* isolate, ZoneStringList* labels) + : IterationStatement(isolate, labels), + each_(NULL), + enumerable_(NULL), + assignment_id_(GetNextId(isolate)) { + } DECLARE_NODE_TYPE(ForInStatement) @@ -700,7 +743,12 @@ class CaseClause: public ZoneObject { class SwitchStatement: public BreakableStatement { public: - inline SwitchStatement(Isolate* isolate, ZoneStringList* labels); + SwitchStatement(Isolate* isolate, ZoneStringList* labels) + : BreakableStatement(isolate, labels, TARGET_FOR_ANONYMOUS), + tag_(NULL), + cases_(NULL) { + } + DECLARE_NODE_TYPE(SwitchStatement) diff --git a/src/parser.cc b/src/parser.cc index c2177bb..40e8071 100644 --- a/src/parser.cc +++ b/src/parser.cc @@ -28,7 +28,7 @@ #include "v8.h" #include "api.h" -#include "ast-inl.h" +#include "ast.h" #include "bootstrapper.h" #include "char-predicates-inl.h" #include "codegen.h" -- 2.7.4