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

Issue 1396333010: [turbofan] Initial support for monomorphic/polymorphic property loads. (Closed)

Created:
5 years, 2 months ago by Benedikt Meurer
Modified:
5 years, 2 months ago
Reviewers:
Jarin
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] Initial support for monomorphic/polymorphic property loads. Native context specialization now lowers monomorphic and polymorphic accesses to data and constant data properties on object and/or prototype chain. We don't deal with accessors yet, and we also completely ignore proxies (which is compatible with what Crankshaft does). The code is more or less the straightforward implementation. We will need to refactor that and extract common patterns once the remaining bits for full load/store support is in. CQ_INCLUDE_TRYBOTS=tryserver.v8:v8_linux_nosnap_rel R=jarin@chromium.org BUG=v8:4470 LOG=n Committed: https://crrev.com/3a0bf860b7177f7abef01ff308a53603389d958e Cr-Commit-Position: refs/heads/master@{#31340} Committed: https://crrev.com/e1088b27b5739cda7d38c4f6865654b783c486f9 Cr-Commit-Position: refs/heads/master@{#31352}

Patch Set 1 : Fix broken tests. Add documentation and TODOs. #

Total comments: 8

Patch Set 2 : Address Jaro's comments #

Patch Set 3 : REBASE #

Patch Set 4 : Work-around register allocator bug. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+416 lines, -14 lines) Patch
M src/compilation-dependencies.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/compilation-dependencies.cc View 1 chunk +9 lines, -0 lines 0 comments Download
M src/compiler/js-global-specialization.h View 1 2 4 chunks +12 lines, -1 line 0 comments Download
M src/compiler/js-global-specialization.cc View 1 2 3 5 chunks +381 lines, -6 lines 0 comments Download
M src/compiler/js-graph.cc View 2 chunks +6 lines, -3 lines 0 comments Download
M src/compiler/js-inlining.cc View 1 2 1 chunk +2 lines, -1 line 0 comments Download
M src/compiler/pipeline.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M src/field-index.h View 1 chunk +2 lines, -0 lines 0 comments Download
M src/objects.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M src/objects-inl.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M test/mjsunit/es6/block-scoping.js View 1 chunk +0 lines, -1 line 0 comments Download
M test/mjsunit/harmony/block-scoping-sloppy.js View 1 chunk +0 lines, -1 line 0 comments Download

Messages

Total messages: 31 (14 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1396333010/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1396333010/20001
5 years, 2 months ago (2015-10-16 06:08:08 UTC) #2
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 2 months ago (2015-10-16 06:44:21 UTC) #4
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1396333010/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1396333010/40001
5 years, 2 months ago (2015-10-16 11:04:22 UTC) #8
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: v8_linux64_avx2_rel on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_avx2_rel/builds/5382)
5 years, 2 months ago (2015-10-16 11:14:45 UTC) #10
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1396333010/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1396333010/60001
5 years, 2 months ago (2015-10-16 11:29:29 UTC) #12
Benedikt Meurer
Hey Jaro, Please take a look. Thanks, Benedikt
5 years, 2 months ago (2015-10-16 11:29:57 UTC) #14
Jarin
Looks mostly good, but readability of that big method is terrible. I understand the complexity ...
5 years, 2 months ago (2015-10-16 12:33:09 UTC) #16
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 2 months ago (2015-10-16 12:36:01 UTC) #18
Benedikt Meurer
https://codereview.chromium.org/1396333010/diff/60001/src/compiler/js-global-specialization.cc File src/compiler/js-global-specialization.cc (right): https://codereview.chromium.org/1396333010/diff/60001/src/compiler/js-global-specialization.cc#newcode374 src/compiler/js-global-specialization.cc:374: Reduction JSGlobalSpecialization::ReduceJSLoadNamed(Node* node) { As discussed offline: Separate CL ...
5 years, 2 months ago (2015-10-16 13:22:15 UTC) #19
Jarin
lgtm
5 years, 2 months ago (2015-10-16 13:25:28 UTC) #20
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1396333010/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1396333010/100001
5 years, 2 months ago (2015-10-16 13:32:20 UTC) #23
commit-bot: I haz the power
Committed patchset #3 (id:100001)
5 years, 2 months ago (2015-10-16 14:09:06 UTC) #24
commit-bot: I haz the power
Patchset 3 (id:??) landed as https://crrev.com/3a0bf860b7177f7abef01ff308a53603389d958e Cr-Commit-Position: refs/heads/master@{#31340}
5 years, 2 months ago (2015-10-16 14:09:26 UTC) #25
Jarin
A revert of this CL (patchset #3 id:100001) has been created in https://codereview.chromium.org/1408123002/ by jarin@chromium.org. ...
5 years, 2 months ago (2015-10-16 14:55:44 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1396333010/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1396333010/120001
5 years, 2 months ago (2015-10-19 04:47:16 UTC) #29
commit-bot: I haz the power
Committed patchset #4 (id:120001)
5 years, 2 months ago (2015-10-19 05:24:43 UTC) #30
commit-bot: I haz the power
5 years, 2 months ago (2015-10-19 05:24:58 UTC) #31
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/e1088b27b5739cda7d38c4f6865654b783c486f9
Cr-Commit-Position: refs/heads/master@{#31352}

Powered by Google App Engine
This is Rietveld 408576698