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

Issue 6481001: Bypass JS accessors when building error array. (Closed)

Created:
9 years, 10 months ago by antonm
Modified:
9 years, 4 months ago
Reviewers:
Lasse Reichstein
CC:
v8-dev
Visibility:
Public.

Description

Bypass JS accessors when building error array. In the presence of JS accessors for elements on Object.prototype JSArray::SetFastElement may throw or its behaviour can be altered. Instead operate on plain FixedArrays and turn them into JSArry later. BUG=v8:1130 TEST=test/mjsunit/regress/regress-1130.js Committed: http://code.google.com/p/v8/source/detail?r=6730

Patch Set 1 #

Total comments: 5

Patch Set 2 : Addressing Lasse's concerns #

Unified diffs Side-by-side diffs Delta from patch set Stats (+42 lines, -5 lines) Patch
M src/parser.cc View 1 chunk +4 lines, -5 lines 0 comments Download
A test/mjsunit/regress/regress-1130.js View 1 1 chunk +38 lines, -0 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
antonm
Lasse, may you have a look?
9 years, 10 months ago (2011-02-09 20:11:00 UTC) #1
Lasse Reichstein
LGTM http://codereview.chromium.org/6481001/diff/1/src/parser.cc File src/parser.cc (right): http://codereview.chromium.org/6481001/diff/1/src/parser.cc#newcode3934 src/parser.cc:3934: Nice and simple way of avoiding setters! http://codereview.chromium.org/6481001/diff/1/test/mjsunit/regress/regress-1130.js ...
9 years, 10 months ago (2011-02-10 14:26:18 UTC) #2
antonm
9 years, 10 months ago (2011-02-10 15:01:54 UTC) #3
Thanks a lot for review, Lasse

http://codereview.chromium.org/6481001/diff/1/test/mjsunit/regress/regress-11...
File test/mjsunit/regress/regress-1130.js (right):

http://codereview.chromium.org/6481001/diff/1/test/mjsunit/regress/regress-11...
test/mjsunit/regress/regress-1130.js:35: eval("(function() { const x; var x
})")();
On 2011/02/10 14:26:18, Lasse Reichstein wrote:
> To ensure that an exception is thrown, add an assertUnreachable() here, after
> the eval.

Done.

http://codereview.chromium.org/6481001/diff/1/test/mjsunit/regress/regress-11...
test/mjsunit/regress/regress-1130.js:37: exception = e;
On 2011/02/10 14:26:18, Lasse Reichstein wrote:
> Then move the typecheck inside the catch, and drop the "exception" variable.

Done.

Powered by Google App Engine
This is Rietveld 408576698