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

Issue 2198833002: [turbofan] Remove unnecessary prototype checks for element access. (Closed)

Created:
4 years, 4 months ago by Benedikt Meurer
Modified:
4 years, 4 months ago
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

[turbofan] Remove unnecessary prototype checks for element access. We don't need to add stability dependencies on JSObject prototypes when storing to an element, because we do the map check (and thereby guard the elements kind) and we also properly deoptimize on holes if the array protector is not usable. R=verwaest@chromium.org BUG=chromium:616709 Committed: https://crrev.com/cad5b29610a1684adecafe25544a6d6dddf2113b Cr-Commit-Position: refs/heads/master@{#38355}

Patch Set 1 #

Patch Set 2 : REBASE. Fix array protector case. #

Patch Set 3 : REBASE #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+68 lines, -85 lines) Patch
M src/compiler/access-info.h View 2 chunks +1 line, -4 lines 0 comments Download
M src/compiler/access-info.cc View 1 2 chunks +3 lines, -27 lines 0 comments Download
M src/compiler/js-native-context-specialization.h View 1 2 1 chunk +6 lines, -0 lines 0 comments Download
M src/compiler/js-native-context-specialization.cc View 1 2 5 chunks +38 lines, -34 lines 1 comment Download
A + test/mjsunit/regress/regress-crbug-616709-1.js View 1 1 chunk +10 lines, -10 lines 0 comments Download
A + test/mjsunit/regress/regress-crbug-616709-2.js View 1 1 chunk +10 lines, -10 lines 0 comments Download

Messages

Total messages: 21 (13 generated)
Benedikt Meurer
4 years, 4 months ago (2016-08-01 11:33:47 UTC) #1
Toon Verwaest
nice! lgtm
4 years, 4 months ago (2016-08-04 12:36:46 UTC) #10
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/2198833002/20001
4 years, 4 months ago (2016-08-04 13:23:53 UTC) #12
commit-bot: I haz the power
Try jobs failed on following builders: v8_presubmit on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_presubmit/builds/21017)
4 years, 4 months ago (2016-08-04 13:27:04 UTC) #14
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/2198833002/40001
4 years, 4 months ago (2016-08-05 04:13:27 UTC) #17
commit-bot: I haz the power
Committed patchset #3 (id:40001)
4 years, 4 months ago (2016-08-05 04:53:57 UTC) #18
commit-bot: I haz the power
Patchset 3 (id:??) landed as https://crrev.com/cad5b29610a1684adecafe25544a6d6dddf2113b Cr-Commit-Position: refs/heads/master@{#38355}
4 years, 4 months ago (2016-08-05 04:55:14 UTC) #20
adamk
4 years, 4 months ago (2016-08-08 22:02:00 UTC) #21
Message was sent while issue was closed.
https://codereview.chromium.org/2198833002/diff/40001/src/compiler/js-native-...
File src/compiler/js-native-context-specialization.cc (right):

https://codereview.chromium.org/2198833002/diff/40001/src/compiler/js-native-...
src/compiler/js-native-context-specialization.cc:1257:
dependencies()->AssumePrototypeMapsStable(map, initial_object_prototype);
Are you missing a call for initial_array_prototype here? See
https://bugs.chromium.org/p/v8/issues/detail?id=5275

Powered by Google App Engine
This is Rietveld 408576698