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

Issue 2090353003: Amend DataView, ArrayBuffer, and TypedArray methods to use ToIndex. (Closed)

Created:
4 years, 6 months ago by bakkot
Modified:
4 years, 5 months ago
Reviewers:
Dan Ehrenberg, adamk
CC:
v8-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

Amend DataView, ArrayBuffer, and TypedArray methods to use ToIndex. The spec was modified to relax some requirements which implementors had not been enforcing. Part of this process involved introducing a new abstract operation ToIndex, which had partial overlap with our existing semantics as well as some differences (most notably treating undefined as 0). Test262 tests were introduced to check for the new semantics, some of which we were failing. This patch amends the parts of our implementation corresponding to specification algorithms which use ToIndex to follow its semantics precisely. BUG=v8:4784, v8:5120 Committed: https://crrev.com/09720349ea058d178521ec58d0a5676443a5a132 Cr-Commit-Position: refs/heads/master@{#37406}

Patch Set 1 #

Patch Set 2 : enable test #

Total comments: 7

Patch Set 3 : clean up tests #

Patch Set 4 : rebase #

Total comments: 5

Patch Set 5 : better error message #

Patch Set 6 : stricter test #

Total comments: 5

Patch Set 7 : comment #

Patch Set 8 : comment #

Unified diffs Side-by-side diffs Delta from patch set Stats (+112 lines, -117 lines) Patch
M src/builtins.cc View 1 2 3 4 2 chunks +22 lines, -35 lines 0 comments Download
M src/js/runtime.js View 1 2 3 2 chunks +8 lines, -0 lines 0 comments Download
M src/js/typedarray.js View 1 2 3 4 5 6 7 6 chunks +24 lines, -19 lines 0 comments Download
M src/messages.h View 1 2 3 4 1 chunk +3 lines, -2 lines 0 comments Download
M src/objects.h View 1 2 3 4 2 chunks +7 lines, -1 line 0 comments Download
M src/objects.cc View 1 2 3 4 1 chunk +12 lines, -0 lines 0 comments Download
M test/mjsunit/harmony/dataview-accessors.js View 1 2 3 4 5 2 chunks +22 lines, -32 lines 0 comments Download
M test/test262/test262.status View 1 2 3 4 2 chunks +14 lines, -28 lines 0 comments Download

Messages

Total messages: 44 (17 generated)
bakkot
4 years, 6 months ago (2016-06-23 21:11:21 UTC) #2
bakkot
4 years, 6 months ago (2016-06-23 21:39:16 UTC) #4
Dan Ehrenberg
https://codereview.chromium.org/2090353003/diff/20001/src/runtime/runtime-object.cc File src/runtime/runtime-object.cc (right): https://codereview.chromium.org/2090353003/diff/20001/src/runtime/runtime-object.cc#newcode893 src/runtime/runtime-object.cc:893: } I don't see anyone who calls %ToIndex. Why ...
4 years, 6 months ago (2016-06-23 21:45:32 UTC) #5
adamk
https://codereview.chromium.org/2090353003/diff/20001/src/js/typedarray.js File src/js/typedarray.js (right): https://codereview.chromium.org/2090353003/diff/20001/src/js/typedarray.js#newcode152 src/js/typedarray.js:152: if (length > %_MaxSmi()) { // note: this is ...
4 years, 6 months ago (2016-06-23 22:04:28 UTC) #7
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2090353003/20001
4 years, 6 months ago (2016-06-24 00:09:46 UTC) #9
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: v8_linux64_asan_rel_ng on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_asan_rel_ng/builds/3778) v8_linux64_asan_rel_ng_triggered on ...
4 years, 6 months ago (2016-06-24 00:34:56 UTC) #11
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2090353003/40001
4 years, 5 months ago (2016-06-28 19:08:23 UTC) #13
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: v8_linux_arm_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_arm_rel_ng/builds/3985) v8_linux_gcc_compile_rel on ...
4 years, 5 months ago (2016-06-28 19:09:33 UTC) #15
Dan Ehrenberg
Rebase and try again?
4 years, 5 months ago (2016-06-28 22:32:44 UTC) #16
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2090353003/60001
4 years, 5 months ago (2016-06-28 22:52:00 UTC) #18
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 5 months ago (2016-06-28 23:33:16 UTC) #20
bakkot
Rebased; ptal. Not sure what it means that v8_linux64_sanitizer_coverage_rel failed. https://codereview.chromium.org/2090353003/diff/20001/src/runtime/runtime-object.cc File src/runtime/runtime-object.cc (right): https://codereview.chromium.org/2090353003/diff/20001/src/runtime/runtime-object.cc#newcode893 ...
4 years, 5 months ago (2016-06-28 23:41:07 UTC) #21
Dan Ehrenberg
https://codereview.chromium.org/2090353003/diff/60001/src/messages.h File src/messages.h (right): https://codereview.chromium.org/2090353003/diff/60001/src/messages.h#newcode341 src/messages.h:341: T(InvalidIndex, "Invalid index") \ The error message here could ...
4 years, 5 months ago (2016-06-28 23:50:15 UTC) #23
Dan Ehrenberg
It's safe to ignore v8_linux64_sanitizer_coverage_rel IMO; it seems to fail for a lot of patches.
4 years, 5 months ago (2016-06-28 23:50:54 UTC) #24
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2090353003/60001
4 years, 5 months ago (2016-06-29 17:35:42 UTC) #26
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 5 months ago (2016-06-29 17:37:51 UTC) #28
bakkot
Addressed comments. https://codereview.chromium.org/2090353003/diff/60001/src/messages.h File src/messages.h (right): https://codereview.chromium.org/2090353003/diff/60001/src/messages.h#newcode341 src/messages.h:341: T(InvalidIndex, "Invalid index") \ On 2016/06/28 at ...
4 years, 5 months ago (2016-06-29 19:01:46 UTC) #29
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2090353003/100001
4 years, 5 months ago (2016-06-29 19:11:43 UTC) #31
Dan Ehrenberg
https://codereview.chromium.org/2090353003/diff/60001/test/mjsunit/harmony/dataview-accessors.js File test/mjsunit/harmony/dataview-accessors.js (right): https://codereview.chromium.org/2090353003/diff/60001/test/mjsunit/harmony/dataview-accessors.js#newcode433 test/mjsunit/harmony/dataview-accessors.js:433: a["set" + type](); On 2016/06/29 at 19:01:45, bakkot wrote: ...
4 years, 5 months ago (2016-06-29 19:13:43 UTC) #32
bakkot
https://codereview.chromium.org/2090353003/diff/100001/src/js/runtime.js File src/js/runtime.js (right): https://codereview.chromium.org/2090353003/diff/100001/src/js/runtime.js#newcode50 src/js/runtime.js:50: if (i < 0 || i > kMaxSafeInteger) throw ...
4 years, 5 months ago (2016-06-29 19:25:09 UTC) #33
Dan Ehrenberg
lgtm
4 years, 5 months ago (2016-06-29 20:07:22 UTC) #34
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2090353003/140001
4 years, 5 months ago (2016-06-29 20:07:37 UTC) #36
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 5 months ago (2016-06-29 20:30:59 UTC) #38
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2090353003/140001
4 years, 5 months ago (2016-06-29 21:15:59 UTC) #40
commit-bot: I haz the power
Committed patchset #8 (id:140001)
4 years, 5 months ago (2016-06-29 21:17:51 UTC) #41
commit-bot: I haz the power
Patchset 8 (id:??) landed as https://crrev.com/09720349ea058d178521ec58d0a5676443a5a132 Cr-Commit-Position: refs/heads/master@{#37406}
4 years, 5 months ago (2016-06-29 21:19:12 UTC) #43
Michael Hablich
4 years, 5 months ago (2016-06-30 07:31:30 UTC) #44
Message was sent while issue was closed.
A revert of this CL (patchset #8 id:140001) has been created in
https://codereview.chromium.org/2113593002/ by hablich@chromium.org.

The reason for reverting is: Speculative revert to unblock roll:
https://codereview.chromium.org/2107223003/.

Powered by Google App Engine
This is Rietveld 408576698