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

Issue 2733563002: [ic] Inline LoadIC into LdaNamedProperty bytecode handler (Closed)

Created:
3 years, 9 months ago by jgruber
Modified:
3 years, 9 months ago
Reviewers:
Igor Sheludko, rmcilroy
CC:
v8-reviews_googlegroups.com
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[ic] Inline LoadIC into LdaNamedProperty bytecode handler This inlines common LoadIC cases into the LdaNamedProperty bytecode handler. Smi handlers resulting in constant/field loads for monomorphic ICs omit frame construction. The same counts for the polymorphic case as long as the target handler is in the first two vector slots. Other cases (megamorphic, uninitialized) call the new LoadIC_Noninlined stub. Local benchmarks show up to 6% improvement on Sunspider with --future. BUG=v8:5917 Review-Url: https://codereview.chromium.org/2733563002 Cr-Commit-Position: refs/heads/master@{#43630} Committed: https://chromium.googlesource.com/v8/v8/+/0bfabaf17484579ff0adc33085ac232b4168636e

Patch Set 1 #

Total comments: 9

Patch Set 2 : Added polymorphic case and addressed comments #

Total comments: 6

Patch Set 3 : Remove LoadFeedbackSlot #

Unified diffs Side-by-side diffs Delta from patch set Stats (+247 lines, -66 lines) Patch
M src/builtins/builtins.h View 1 1 chunk +1 line, -0 lines 0 comments Download
M src/builtins/builtins-ic.cc View 1 chunk +1 line, -0 lines 0 comments Download
M src/code-factory.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/code-factory.cc View 1 chunk +6 lines, -0 lines 0 comments Download
M src/code-stub-assembler.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/code-stub-assembler.cc View 1 chunk +5 lines, -0 lines 0 comments Download
M src/ic/accessor-assembler.h View 1 2 4 chunks +12 lines, -1 line 0 comments Download
M src/ic/accessor-assembler.cc View 1 2 17 chunks +157 lines, -38 lines 0 comments Download
M src/interpreter/interpreter.h View 1 chunk +8 lines, -3 lines 0 comments Download
M src/interpreter/interpreter.cc View 1 5 chunks +55 lines, -24 lines 0 comments Download

Messages

Total messages: 26 (18 generated)
jgruber
PTAL. Some self-review comments inline. https://codereview.chromium.org/2733563002/diff/1/src/ic/accessor-assembler.cc File src/ic/accessor-assembler.cc (right): https://codereview.chromium.org/2733563002/diff/1/src/ic/accessor-assembler.cc#newcode22 src/ic/accessor-assembler.cc:22: Node* AccessorAssembler::LoadFeedbackSlot(Node* vector, Node* ...
3 years, 9 months ago (2017-03-03 13:31:14 UTC) #6
Igor Sheludko
Looks good, only nits. I'd appreciate that if you also move the inlined LoadGlobalIC part ...
3 years, 9 months ago (2017-03-03 15:29:44 UTC) #7
jgruber
The latest patchset moves logic to AccessorAssembler as requested. It also inlines the polymorphic case, ...
3 years, 9 months ago (2017-03-03 17:53:43 UTC) #11
Igor Sheludko
lgtm
3 years, 9 months ago (2017-03-03 21:43:25 UTC) #14
rmcilroy
> Local benchmarks show up to 6% improvement on Sunspider with --future. Nice :). LGTM, ...
3 years, 9 months ago (2017-03-06 09:06:37 UTC) #15
jgruber
Thanks for the reviews! Removing LoadFeedbackSlot and landing after. https://codereview.chromium.org/2733563002/diff/20001/src/ic/accessor-assembler.cc File src/ic/accessor-assembler.cc (right): https://codereview.chromium.org/2733563002/diff/20001/src/ic/accessor-assembler.cc#newcode22 src/ic/accessor-assembler.cc:22: ...
3 years, 9 months ago (2017-03-07 09:40:56 UTC) #16
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/2733563002/40001
3 years, 9 months ago (2017-03-07 10:19:58 UTC) #23
commit-bot: I haz the power
3 years, 9 months ago (2017-03-07 10:21:39 UTC) #26
Message was sent while issue was closed.
Committed patchset #3 (id:40001) as
https://chromium.googlesource.com/v8/v8/+/0bfabaf17484579ff0adc33085ac232b416...

Powered by Google App Engine
This is Rietveld 408576698