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

Issue 2841613002: [compiler][modules] Constant-fold the loads of module cells. (Closed)

Created:
3 years, 8 months ago by neis
Modified:
3 years, 7 months ago
Reviewers:
Michael Starzinger
CC:
v8-reviews_googlegroups.com
Target Ref:
refs/heads/master
Project:
v8
Visibility:
Public.

Description

[compiler][modules] Constant-fold loads of module cells. 1. Generalize context specialization such that the provided context can be any outer context of the function, not necessarily the immediate outer context. 2. Based on this: if function specialization is disabled, then specialize for the module context if there is one. 3. Extend typed lowering of module loads and stores such that if the operand is a Module constant, we constant-fold the cell load. That is, a JSLoadModule with a Module HeapConstant input becomes a LoadField with a Cell HeapConstant input, and similarly for JSStoreModule. BUG=v8:1569 Review-Url: https://codereview.chromium.org/2841613002 Cr-Commit-Position: refs/heads/master@{#45083} Committed: https://chromium.googlesource.com/v8/v8/+/24d7890151cdaae0bf373a30bc8fbd603bfbfa9a

Patch Set 1 #

Patch Set 2 : Rebase. #

Total comments: 6

Patch Set 3 : Rebase. #

Patch Set 4 : Address feedback. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+105 lines, -57 lines) Patch
M src/compiler/js-context-specialization.h View 2 chunks +16 lines, -4 lines 0 comments Download
M src/compiler/js-context-specialization.cc View 1 2 3 3 chunks +45 lines, -8 lines 0 comments Download
M src/compiler/js-typed-lowering.cc View 1 2 3 1 chunk +8 lines, -0 lines 0 comments Download
M src/compiler/node-properties.h View 1 chunk +0 lines, -6 lines 0 comments Download
M src/compiler/node-properties.cc View 1 2 1 chunk +0 lines, -25 lines 0 comments Download
M src/compiler/pipeline.cc View 1 2 3 2 chunks +25 lines, -3 lines 0 comments Download
M src/compiler/types.cc View 2 chunks +1 line, -1 line 0 comments Download
M test/cctest/compiler/test-js-context-specialization.cc View 9 chunks +10 lines, -10 lines 0 comments Download

Messages

Total messages: 29 (23 generated)
neis
PTAL
3 years, 8 months ago (2017-04-25 08:17:31 UTC) #19
Michael Starzinger
Looking good. Just one question about {GetModuleContext} in the pipeline.cc file. https://codereview.chromium.org/2841613002/diff/120001/src/compiler/js-context-specialization.cc File src/compiler/js-context-specialization.cc (right): ...
3 years, 7 months ago (2017-05-03 17:28:16 UTC) #22
neis
https://codereview.chromium.org/2841613002/diff/120001/src/compiler/js-context-specialization.cc File src/compiler/js-context-specialization.cc (right): https://codereview.chromium.org/2841613002/diff/120001/src/compiler/js-context-specialization.cc#newcode99 src/compiler/js-context-specialization.cc:99: MaybeHandle<Context> GetSpecializationContext(Node* node, On 2017/05/03 17:28:16, Michael Starzinger wrote: ...
3 years, 7 months ago (2017-05-04 10:36:21 UTC) #23
Michael Starzinger
LGTM. Nice! Thanks!
3 years, 7 months ago (2017-05-04 10:38:41 UTC) #24
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/2841613002/160001
3 years, 7 months ago (2017-05-04 10:39:35 UTC) #26
commit-bot: I haz the power
3 years, 7 months ago (2017-05-04 11:09:28 UTC) #29
Message was sent while issue was closed.
Committed patchset #4 (id:160001) as
https://chromium.googlesource.com/v8/v8/+/24d7890151cdaae0bf373a30bc8fbd603bf...

Powered by Google App Engine
This is Rietveld 408576698