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

Issue 1072353002: [turbofan] Optimize silent hole checks on legacy const context slots. (Closed)

Created:
5 years, 8 months ago by Benedikt Meurer
Modified:
5 years, 8 months ago
Reviewers:
Michael Starzinger
CC:
v8-dev
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[turbofan] Optimize silent hole checks on legacy const context slots. Currently we always generate a diamond in the graph builder for every legacy const context slot, which we cannot get rid of until late control reduction, even if we know after context specialization that the slot is already initialized. Now we generate a select instead, which the CommonOperatorReducer happily removes during typed lowering. This greatly speeds up asm.js code generated by Emscripten with the new POINTER_MASKING mode. R=mstarzinger@chromium.org Committed: https://crrev.com/35f6c0fdbf7814428d9fdec65cb24c8d4ed17452 Cr-Commit-Position: refs/heads/master@{#27739}

Patch Set 1 #

Total comments: 4

Patch Set 2 : Address comment. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+100 lines, -38 lines) Patch
M src/compiler/ast-graph-builder.cc View 1 chunk +2 lines, -8 lines 0 comments Download
M src/compiler/common-operator-reducer.cc View 1 1 chunk +41 lines, -30 lines 0 comments Download
A test/mjsunit/asm/pointer-masking.js View 1 chunk +35 lines, -0 lines 0 comments Download
M test/unittests/compiler/common-operator-reducer-unittest.cc View 1 chunk +22 lines, -0 lines 0 comments Download

Messages

Total messages: 9 (1 generated)
Benedikt Meurer
5 years, 8 months ago (2015-04-10 08:55:21 UTC) #1
Benedikt Meurer
Hey Michi, This is the fix for the hole checks with pointer masking. Please take ...
5 years, 8 months ago (2015-04-10 08:55:53 UTC) #2
Michael Starzinger
https://codereview.chromium.org/1072353002/diff/1/src/compiler/common-operator-reducer.cc File src/compiler/common-operator-reducer.cc (right): https://codereview.chromium.org/1072353002/diff/1/src/compiler/common-operator-reducer.cc#newcode115 src/compiler/common-operator-reducer.cc:115: if (mcond.Is( We should be able to use the ...
5 years, 8 months ago (2015-04-10 09:32:39 UTC) #3
Benedikt Meurer
Done, thanks. PTAL https://codereview.chromium.org/1072353002/diff/1/src/compiler/common-operator-reducer.cc File src/compiler/common-operator-reducer.cc (right): https://codereview.chromium.org/1072353002/diff/1/src/compiler/common-operator-reducer.cc#newcode115 src/compiler/common-operator-reducer.cc:115: if (mcond.Is( On 2015/04/10 09:32:39, Michael ...
5 years, 8 months ago (2015-04-10 09:39:38 UTC) #4
Michael Starzinger
LGTM.
5 years, 8 months ago (2015-04-10 09:56:49 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1072353002/20001
5 years, 8 months ago (2015-04-10 10:21:02 UTC) #7
commit-bot: I haz the power
Committed patchset #2 (id:20001)
5 years, 8 months ago (2015-04-10 10:28:10 UTC) #8
commit-bot: I haz the power
5 years, 8 months ago (2015-04-10 10:28:27 UTC) #9
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/35f6c0fdbf7814428d9fdec65cb24c8d4ed17452
Cr-Commit-Position: refs/heads/master@{#27739}

Powered by Google App Engine
This is Rietveld 408576698