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

Issue 1516843002: [proxy] fixing harmony/proxy.js tests and improving error messages + some drive-by fixes (Closed)

Created:
5 years ago by Camillo Bruni
Modified:
5 years ago
CC:
adamk, 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

[proxy] fixing for-in for proxies, fixing harmony/proxy.js tests, improving error messages and some drive-by fixes - Enable old proxy tests. Many tests had to be updated. Proxies are instantiated differently and there is no distinction between normal proxies and callable function proxies anymore. Most additional changes are related to the getOwnPropertyDescriptor trap which is not accessed as often anymore for new proxies. - For-in still used the old-style proxy semantics which skip the [[Has]] check for each loop-iteration. This CL uses the slower but correct runtime fallback for proxies. BUG=v8:1543 LOG=n patch from issue 1519473002 at patchset 1 (http://crrev.com/1519473002#ps1) Committed: https://crrev.com/df2a92972b0a087080e67496177e879e9409d5b0 Cr-Commit-Position: refs/heads/master@{#32801}

Patch Set 1 #

Total comments: 15

Patch Set 2 : enabling with-tests #

Patch Set 3 : merging master #

Patch Set 4 : fixing for-in for proxies #

Patch Set 5 : enabling and fixing more tests #

Total comments: 2

Patch Set 6 : fixing set super property test #

Total comments: 1

Patch Set 7 : updating turbofan #

Patch Set 8 : fixed turbofan for-in #

Total comments: 2

Patch Set 9 : remove debug comment #

Patch Set 10 : WIP fix protoype walks with access checks #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+597 lines, -1450 lines) Patch
M src/builtins.cc View 1 2 1 chunk +12 lines, -3 lines 0 comments Download
M src/compiler/js-generic-lowering.cc View 1 2 3 4 5 6 7 1 chunk +2 lines, -23 lines 0 comments Download
M src/compiler/js-typed-lowering.cc View 1 2 3 4 5 6 7 1 chunk +2 lines, -12 lines 0 comments Download
M src/full-codegen/arm/full-codegen-arm.cc View 1 2 3 4 5 6 2 chunks +1 line, -14 lines 0 comments Download
M src/full-codegen/arm64/full-codegen-arm64.cc View 1 2 3 4 5 6 2 chunks +1 line, -12 lines 0 comments Download
M src/full-codegen/ia32/full-codegen-ia32.cc View 1 2 3 4 5 6 3 chunks +1 line, -16 lines 0 comments Download
M src/full-codegen/mips/full-codegen-mips.cc View 1 2 3 4 5 6 3 chunks +1 line, -13 lines 0 comments Download
M src/full-codegen/mips64/full-codegen-mips64.cc View 1 2 3 4 5 6 3 chunks +1 line, -13 lines 0 comments Download
M src/full-codegen/ppc/full-codegen-ppc.cc View 1 2 3 4 5 6 3 chunks +1 line, -14 lines 0 comments Download
M src/full-codegen/x64/full-codegen-x64.cc View 1 2 3 4 5 6 3 chunks +1 line, -13 lines 0 comments Download
M src/full-codegen/x87/full-codegen-x87.cc View 1 2 3 4 5 6 3 chunks +1 line, -16 lines 0 comments Download
M src/ia32/code-stubs-ia32.cc View 1 2 3 4 5 6 7 8 9 1 chunk +18 lines, -2 lines 0 comments Download
M src/isolate.cc View 1 2 3 4 5 6 7 8 9 2 chunks +24 lines, -1 line 0 comments Download
M src/js/proxy.js View 2 chunks +3 lines, -3 lines 0 comments Download
M src/js/v8natives.js View 1 2 1 chunk +1 line, -1 line 0 comments Download
M src/messages.h View 1 2 3 4 5 6 7 8 9 2 chunks +10 lines, -2 lines 0 comments Download
M src/objects.cc View 1 2 3 4 5 6 7 8 9 10 chunks +23 lines, -16 lines 0 comments Download
M src/prototype.h View 1 2 3 4 5 6 7 8 9 1 chunk +16 lines, -0 lines 0 comments Download
M test/mjsunit/es6/regress/regress-cr493566.js View 1 2 3 4 5 3 chunks +43 lines, -19 lines 0 comments Download
D test/mjsunit/for-in-opt.js View 1 2 3 6 chunks +15 lines, -7 lines 0 comments Download
M test/mjsunit/harmony/debug-stepin-proxies.js View 1 2 3 4 1 chunk +5 lines, -1 line 0 comments Download
M test/mjsunit/harmony/proxies.js View 1 2 3 4 5 6 7 8 36 chunks +250 lines, -1021 lines 0 comments Download
A test/mjsunit/harmony/proxies-cross-realm-ecxeption.js View 1 2 3 4 5 6 7 8 9 1 chunk +19 lines, -0 lines 1 comment Download
M test/mjsunit/harmony/proxies-enumerate.js View 1 2 3 4 5 6 1 chunk +35 lines, -0 lines 0 comments Download
M test/mjsunit/harmony/proxies-for.js View 1 2 3 2 chunks +8 lines, -7 lines 0 comments Download
M test/mjsunit/harmony/proxies-get-prototype-of.js View 1 2 3 4 5 6 7 8 9 1 chunk +10 lines, -0 lines 0 comments Download
M test/mjsunit/harmony/proxies-with.js View 1 2 3 4 6 chunks +64 lines, -164 lines 0 comments Download
M test/mjsunit/harmony/regress/regress-2219.js View 1 chunk +1 line, -1 line 0 comments Download
M test/mjsunit/harmony/regress/regress-2225.js View 1 2 3 4 2 chunks +24 lines, -13 lines 0 comments Download
D test/mjsunit/harmony/regress/regress-405844.js View 1 2 3 4 1 chunk +0 lines, -13 lines 0 comments Download
M test/mjsunit/harmony/regress/regress-crbug-461520.js View 1 2 3 4 1 chunk +3 lines, -1 line 0 comments Download
M test/mjsunit/harmony/regress/regress-lookup-transition.js View 1 chunk +1 line, -1 line 0 comments Download
M test/mjsunit/mjsunit.status View 1 2 3 4 2 chunks +0 lines, -16 lines 0 comments Download
D test/mjsunit/regress/regress-crbug-493568.js View 1 chunk +0 lines, -12 lines 0 comments Download

Depends on Patchset:

Messages

Total messages: 47 (19 generated)
Camillo Bruni
PTAL neis: I would like to land incrementally, specially since I had to do some ...
5 years ago (2015-12-10 14:57:07 UTC) #3
neis
https://codereview.chromium.org/1516843002/diff/1/src/objects.cc File src/objects.cc (right): https://codereview.chromium.org/1516843002/diff/1/src/objects.cc#newcode6841 src/objects.cc:6841: } (!trap_result_obj->BooleanValue() means that the boolean value of the ...
5 years ago (2015-12-10 15:13:50 UTC) #4
caitp (gmail)
https://codereview.chromium.org/1516843002/diff/1/src/builtins.cc File src/builtins.cc (right): https://codereview.chromium.org/1516843002/diff/1/src/builtins.cc#newcode1803 src/builtins.cc:1803: if (args.length() < 2) { Perhaps it makes sense ...
5 years ago (2015-12-10 15:15:25 UTC) #5
Jakob Kummerow
https://codereview.chromium.org/1516843002/diff/1/src/objects.cc File src/objects.cc (right): https://codereview.chromium.org/1516843002/diff/1/src/objects.cc#newcode4727 src/objects.cc:4727: NewTypeError(MessageTemplate::kProxyTrapReturnedNonBoolean, Nope, the problem is that it returned a ...
5 years ago (2015-12-10 15:35:04 UTC) #6
neis
https://codereview.chromium.org/1516843002/diff/1/test/mjsunit/for-in-opt.js File test/mjsunit/for-in-opt.js (left): https://codereview.chromium.org/1516843002/diff/1/test/mjsunit/for-in-opt.js#oldcode18 test/mjsunit/for-in-opt.js:18: assertEquals(["0"], f("a")); On 2015/12/10 15:35:03, Jakob wrote: > What's ...
5 years ago (2015-12-10 16:08:13 UTC) #9
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1516843002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1516843002/100001
5 years ago (2015-12-10 20:20:08 UTC) #11
Camillo Bruni
PTAL There was a minor hiccup with for-in and proxies which I fixed, now we ...
5 years ago (2015-12-10 20:22:14 UTC) #13
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: v8_linux_arm_rel on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_arm_rel/builds/11326) v8_linux_nodcheck_rel on ...
5 years ago (2015-12-10 20:35:23 UTC) #15
Jakob Kummerow
Looks good, but that enumerate test still doesn't seem to be quite working yet. Also, ...
5 years ago (2015-12-10 21:12:14 UTC) #16
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1516843002/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1516843002/120001
5 years ago (2015-12-11 10:48:22 UTC) #18
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1516843002/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1516843002/140001
5 years ago (2015-12-11 10:51:20 UTC) #20
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years ago (2015-12-11 11:35:18 UTC) #22
Camillo Bruni
PTAL bmeurer: could you check compiler/* again? => needed Smi(1) push for for-in map checks ...
5 years ago (2015-12-11 11:45:48 UTC) #24
neis
https://codereview.chromium.org/1516843002/diff/140001/test/mjsunit/harmony/proxies.js File test/mjsunit/harmony/proxies.js (right): https://codereview.chromium.org/1516843002/diff/140001/test/mjsunit/harmony/proxies.js#newcode53 test/mjsunit/harmony/proxies.js:53: /* What happens when you remove the comment around ...
5 years ago (2015-12-11 12:08:15 UTC) #25
Camillo Bruni
https://codereview.chromium.org/1516843002/diff/140001/test/mjsunit/harmony/proxies.js File test/mjsunit/harmony/proxies.js (right): https://codereview.chromium.org/1516843002/diff/140001/test/mjsunit/harmony/proxies.js#newcode53 test/mjsunit/harmony/proxies.js:53: /* On 2015/12/11 at 12:08:15, neis wrote: > What ...
5 years ago (2015-12-11 12:40:55 UTC) #26
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1516843002/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1516843002/160001
5 years ago (2015-12-11 12:48:34 UTC) #28
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: v8_linux64_asan_rel on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_asan_rel/builds/11329) v8_linux64_avx2_rel on ...
5 years ago (2015-12-11 13:00:36 UTC) #30
Jakob Kummerow
lgtm
5 years ago (2015-12-11 13:14:43 UTC) #31
Benedikt Meurer
LGTM on compiler
5 years ago (2015-12-11 13:20:22 UTC) #32
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1516843002/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1516843002/160001
5 years ago (2015-12-11 13:22:12 UTC) #34
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years ago (2015-12-11 14:06:53 UTC) #36
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1516843002/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1516843002/160001
5 years ago (2015-12-11 14:24:57 UTC) #38
commit-bot: I haz the power
Committed patchset #9 (id:160001)
5 years ago (2015-12-11 14:55:25 UTC) #39
commit-bot: I haz the power
Patchset 9 (id:??) landed as https://crrev.com/df2a92972b0a087080e67496177e879e9409d5b0 Cr-Commit-Position: refs/heads/master@{#32801}
5 years ago (2015-12-11 14:56:08 UTC) #41
adamk
Hi Camillo, just a note that it would have been nice for this CL to ...
5 years ago (2015-12-11 23:29:42 UTC) #42
dingxiangfei2009
The file name has a typo, I believe. https://codereview.chromium.org/1516843002/diff/180001/test/mjsunit/harmony/proxies-cross-realm-ecxeption.js File test/mjsunit/harmony/proxies-cross-realm-ecxeption.js (right): https://codereview.chromium.org/1516843002/diff/180001/test/mjsunit/harmony/proxies-cross-realm-ecxeption.js#newcode1 test/mjsunit/harmony/proxies-cross-realm-ecxeption.js:1: // ...
5 years ago (2015-12-12 01:27:02 UTC) #44
Camillo Bruni
On 2015/12/12 at 01:27:02, dingxiangfei2009 wrote: > The file name has a typo, I believe. ...
5 years ago (2015-12-14 08:36:00 UTC) #46
Camillo Bruni
5 years ago (2015-12-14 08:36:57 UTC) #47
Message was sent while issue was closed.
On 2015/12/11 at 23:29:42, adamk wrote:
> Hi Camillo, just a note that it would have been nice for this CL to have a
better description, e.g., what did it fix? how? etc. This is useful both for
archaeology and for folks  skimming v8-reviews (as I tend to do).

You're right... I updated the description here to give at least some idea what's
going on ;)

Powered by Google App Engine
This is Rietveld 408576698