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

Issue 1457683003: [turbofan] Initial support for escape analysis. (Closed)

Created:
5 years, 1 month ago by sigurds
Modified:
5 years ago
CC:
v8-reviews_googlegroups.com, Michael Hablich
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 escape analysis. This is the first part of escape analysis for turbofan. At the moment, there is no deopt support, and support for loops is partial (only binary Phis are handled). The CL includes 4 unittests. There are also 8 new mjsunit tests, some of which are skiped as they require features not yet implemented. BUG=v8:4586 LOG=n Committed: https://crrev.com/aa0ddf7db41eee028cd86ba23f74ac56e5c7e84f Cr-Commit-Position: refs/heads/master@{#32498}

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : Fix bug #

Patch Set 5 : #

Total comments: 28

Patch Set 6 : Adress comments and refactor escape-analysis.cc #

Patch Set 7 : Refactor effect phi processing #

Patch Set 8 : Add more DCHECKS #

Total comments: 2

Patch Set 9 : Address comments #

Patch Set 10 : Fix bug + small improvements #

Total comments: 1

Patch Set 11 : Fix bug in unittest #

Total comments: 8

Patch Set 12 : Addressed comments #

Patch Set 13 : Rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1719 lines, -92 lines) Patch
M BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +4 lines, -0 lines 0 comments Download
A src/compiler/escape-analysis.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +113 lines, -0 lines 0 comments Download
A src/compiler/escape-analysis.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +888 lines, -0 lines 0 comments Download
A src/compiler/escape-analysis-reducer.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +53 lines, -0 lines 0 comments Download
A src/compiler/escape-analysis-reducer.cc View 1 2 3 4 5 1 chunk +171 lines, -0 lines 0 comments Download
M src/compiler/pipeline.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +27 lines, -0 lines 0 comments Download
M src/flag-definitions.h View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
A + test/mjsunit/compiler/escape-analysis-1.js View 1 2 3 4 5 2 chunks +10 lines, -12 lines 0 comments Download
A + test/mjsunit/compiler/escape-analysis-2.js View 1 2 3 4 5 2 chunks +13 lines, -13 lines 0 comments Download
A + test/mjsunit/compiler/escape-analysis-3.js View 1 2 3 4 5 2 chunks +11 lines, -12 lines 0 comments Download
A + test/mjsunit/compiler/escape-analysis-4.js View 1 2 3 4 5 1 chunk +19 lines, -11 lines 0 comments Download
A + test/mjsunit/compiler/escape-analysis-5.js View 1 2 3 4 5 1 chunk +19 lines, -11 lines 0 comments Download
A + test/mjsunit/compiler/escape-analysis-6.js View 1 2 3 4 5 1 chunk +19 lines, -11 lines 0 comments Download
A + test/mjsunit/compiler/escape-analysis-7.js View 1 2 3 4 5 1 chunk +22 lines, -11 lines 0 comments Download
A + test/mjsunit/compiler/escape-analysis-8.js View 1 2 3 4 5 1 chunk +20 lines, -11 lines 0 comments Download
M test/mjsunit/mjsunit.status View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +12 lines, -0 lines 0 comments Download
A test/unittests/compiler/escape-analysis-unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +311 lines, -0 lines 0 comments Download
M test/unittests/unittests.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -0 lines 0 comments Download
M tools/gyp/v8.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +4 lines, -0 lines 0 comments Download

Messages

Total messages: 30 (19 generated)
sigurds
Please take a first look. I guess there will be a lot of comments.
5 years, 1 month ago (2015-11-19 14:07:57 UTC) #10
Michael Starzinger
On a high level this is looking good already. Mostly nits or smaller comments. I ...
5 years ago (2015-11-30 10:05:39 UTC) #14
sigurds
Thanks for the comments, I addressed all of them. escape-analysis.cc has been refactored. https://codereview.chromium.org/1457683003/diff/170001/src/compiler/escape-analysis-reducer.cc File ...
5 years ago (2015-11-30 13:50:24 UTC) #15
Benedikt Meurer
https://codereview.chromium.org/1457683003/diff/230001/src/compiler/escape-analysis.cc File src/compiler/escape-analysis.cc (right): https://codereview.chromium.org/1457683003/diff/230001/src/compiler/escape-analysis.cc#newcode511 src/compiler/escape-analysis.cc:511: ++count; Nit: if (++count > 1) return true; and ...
5 years ago (2015-11-30 17:21:16 UTC) #16
sigurds
Adressed the comments, more try jobs running. https://codereview.chromium.org/1457683003/diff/230001/src/compiler/escape-analysis.cc File src/compiler/escape-analysis.cc (right): https://codereview.chromium.org/1457683003/diff/230001/src/compiler/escape-analysis.cc#newcode511 src/compiler/escape-analysis.cc:511: ++count; On ...
5 years ago (2015-12-01 10:13:17 UTC) #17
sigurds
https://codereview.chromium.org/1457683003/diff/260001/src/compiler/escape-analysis.cc File src/compiler/escape-analysis.cc (right): https://codereview.chromium.org/1457683003/diff/260001/src/compiler/escape-analysis.cc#newcode298 src/compiler/escape-analysis.cc:298: case IrOpcode::kLoadField: { This is the bugfix.
5 years ago (2015-12-01 15:10:07 UTC) #18
Michael Starzinger
LGTM after last comments are addressed. Did a thorough review of all of the integration ...
5 years ago (2015-12-01 17:18:38 UTC) #19
sigurds
https://codereview.chromium.org/1457683003/diff/280001/src/compiler/escape-analysis-reducer.h File src/compiler/escape-analysis-reducer.h (right): https://codereview.chromium.org/1457683003/diff/280001/src/compiler/escape-analysis-reducer.h#newcode10 src/compiler/escape-analysis-reducer.h:10: #include "src/compiler/js-graph.h" On 2015/12/01 17:18:37, Michael Starzinger wrote: > ...
5 years ago (2015-12-02 10:12:20 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1457683003/340001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1457683003/340001
5 years ago (2015-12-02 10:45:57 UTC) #25
commit-bot: I haz the power
Committed patchset #13 (id:340001)
5 years ago (2015-12-02 10:53:32 UTC) #28
commit-bot: I haz the power
5 years ago (2015-12-02 10:53:56 UTC) #30
Message was sent while issue was closed.
Patchset 13 (id:??) landed as
https://crrev.com/aa0ddf7db41eee028cd86ba23f74ac56e5c7e84f
Cr-Commit-Position: refs/heads/master@{#32498}

Powered by Google App Engine
This is Rietveld 408576698