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

Side by Side Diff: src/full-codegen/full-codegen.cc

Issue 2480253006: Only treat lookup-slot-calls going through 'with' special (Closed)
Patch Set: Rebaseline expectations Created 4 years, 1 month 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
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 #include "src/full-codegen/full-codegen.h" 5 #include "src/full-codegen/full-codegen.h"
6 6
7 #include "src/ast/ast-numbering.h" 7 #include "src/ast/ast-numbering.h"
8 #include "src/ast/ast.h" 8 #include "src/ast/ast.h"
9 #include "src/ast/prettyprinter.h" 9 #include "src/ast/prettyprinter.h"
10 #include "src/ast/scopes.h" 10 #include "src/ast/scopes.h"
(...skipping 1656 matching lines...) Expand 10 before | Expand all | Expand 10 after
1667 Expression* callee = expr->expression(); 1667 Expression* callee = expr->expression();
1668 Call::CallType call_type = expr->GetCallType(); 1668 Call::CallType call_type = expr->GetCallType();
1669 1669
1670 switch (call_type) { 1670 switch (call_type) {
1671 case Call::POSSIBLY_EVAL_CALL: 1671 case Call::POSSIBLY_EVAL_CALL:
1672 EmitPossiblyEvalCall(expr); 1672 EmitPossiblyEvalCall(expr);
1673 break; 1673 break;
1674 case Call::GLOBAL_CALL: 1674 case Call::GLOBAL_CALL:
1675 EmitCallWithLoadIC(expr); 1675 EmitCallWithLoadIC(expr);
1676 break; 1676 break;
1677 case Call::LOOKUP_SLOT_CALL: 1677 case Call::WITH_CALL:
1678 // Call to a lookup slot (dynamically introduced variable). 1678 // Call to a lookup slot looked up through a with scope.
1679 PushCalleeAndWithBaseObject(expr); 1679 PushCalleeAndWithBaseObject(expr);
1680 EmitCall(expr); 1680 EmitCall(expr);
1681 break; 1681 break;
1682 case Call::NAMED_PROPERTY_CALL: { 1682 case Call::NAMED_PROPERTY_CALL: {
1683 Property* property = callee->AsProperty(); 1683 Property* property = callee->AsProperty();
1684 VisitForStackValue(property->obj()); 1684 VisitForStackValue(property->obj());
1685 EmitCallWithLoadIC(expr); 1685 EmitCallWithLoadIC(expr);
1686 break; 1686 break;
1687 } 1687 }
1688 case Call::KEYED_PROPERTY_CALL: { 1688 case Call::KEYED_PROPERTY_CALL: {
(...skipping 302 matching lines...) Expand 10 before | Expand all | Expand 10 after
1991 return info_->has_simple_parameters(); 1991 return info_->has_simple_parameters();
1992 } 1992 }
1993 1993
1994 FunctionLiteral* FullCodeGenerator::literal() const { return info_->literal(); } 1994 FunctionLiteral* FullCodeGenerator::literal() const { return info_->literal(); }
1995 1995
1996 #undef __ 1996 #undef __
1997 1997
1998 1998
1999 } // namespace internal 1999 } // namespace internal
2000 } // namespace v8 2000 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698