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

Issue 6667076: Remove arguments shadow from scopes, stop rewriting parameters. (Closed)

Created:
9 years, 9 months ago by Kevin Millikin (Chromium)
Modified:
9 years, 7 months ago
CC:
v8-dev
Visibility:
Public.

Description

[Arguments] Remove arguments shadow from scopes, stop rewriting parameters. Do not rewrite parameters in functions using the arguments object, access them directly. They are allocated to the context in preparation for capturing by the arguments object. The arguments shadow object is removed from scopes, because there is no longer any reason to preserve the original arguments object against assignments to "arguments". This change breaks the aliasing between parameters and arguments, and temporarily makes the arguments object mirror behave the same in strict and non-strict mode. Committed: http://code.google.com/p/v8/source/detail?r=7240

Patch Set 1 #

Total comments: 3
Unified diffs Side-by-side diffs Delta from patch set Stats (+55 lines, -220 lines) Patch
M arguments/src/arm/codegen-arm.cc View 3 chunks +0 lines, -8 lines 0 comments Download
M arguments/src/arm/full-codegen-arm.cc View 1 chunk +0 lines, -6 lines 0 comments Download
M arguments/src/ast.h View 1 chunk +1 line, -10 lines 0 comments Download
M arguments/src/hydrogen.cc View 1 chunk +1 line, -6 lines 0 comments Download
M arguments/src/ia32/codegen-ia32.cc View 3 chunks +0 lines, -10 lines 0 comments Download
M arguments/src/ia32/full-codegen-ia32.cc View 1 chunk +0 lines, -5 lines 0 comments Download
M arguments/src/scopes.h View 3 chunks +0 lines, -7 lines 0 comments Download
M arguments/src/scopes.cc View 4 chunks +50 lines, -150 lines 3 comments Download
M arguments/src/variables.h View 2 chunks +3 lines, -4 lines 0 comments Download
M arguments/src/x64/codegen-x64.cc View 3 chunks +0 lines, -8 lines 0 comments Download
M arguments/src/x64/full-codegen-x64.cc View 1 chunk +0 lines, -6 lines 0 comments Download

Messages

Total messages: 4 (0 generated)
Kevin Millikin (Chromium)
9 years, 9 months ago (2011-03-17 13:45:23 UTC) #1
Kevin Millikin (Chromium)
http://codereview.chromium.org/6667076/diff/1/arguments/src/scopes.cc File arguments/src/scopes.cc (left): http://codereview.chromium.org/6667076/diff/1/arguments/src/scopes.cc#oldcode308 arguments/src/scopes.cc:308: variables_.Declare(this, name, Variable::VAR, true, Variable::NORMAL); I made these variables ...
9 years, 9 months ago (2011-03-17 13:47:46 UTC) #2
Mads Ager (chromium)
LGTM. http://codereview.chromium.org/6667076/diff/1/arguments/src/scopes.cc File arguments/src/scopes.cc (right): http://codereview.chromium.org/6667076/diff/1/arguments/src/scopes.cc#newcode862 arguments/src/scopes.cc:862: // (*). If we have a parameter named ...
9 years, 9 months ago (2011-03-17 14:28:10 UTC) #3
Kevin Millikin (Chromium)
9 years, 9 months ago (2011-03-17 14:35:04 UTC) #4
http://codereview.chromium.org/6667076/diff/1/arguments/src/scopes.cc
File arguments/src/scopes.cc (right):

http://codereview.chromium.org/6667076/diff/1/arguments/src/scopes.cc#newcode862
arguments/src/scopes.cc:862: // (*). If we have a parameter named 'arguments', a
(new) value is
On 2011/03/17 14:28:10, Mads Ager wrote:
> The (*) is not gone. :-)

It is now.

Powered by Google App Engine
This is Rietveld 408576698