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

Issue 2342853002: [TypeFeedbackVector] special ic slots for interpreter compare/binary ops. (Closed)

Created:
4 years, 3 months ago by mvstanton
Modified:
4 years, 3 months ago
CC:
v8-reviews_googlegroups.com
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[TypeFeedbackVector] special ic slots for interpreter compare/binary ops. Full code uses patching ICs for this feedback, and the interpreter uses the type feedback vector. It's a good idea to code the vector slots appropriately as ICs so that the runtime profiler can better gauge if the function is ready for tiering up from Ignition to TurboFan. As is, the feedback is stored in "general" slots which can't be characterized by the runtime profiler into feedback states. This CL addresses that problem. Note that it's also important to carefully exclude these slots from the profiler's consideration when determining if you want to optimize from Full code. BUG= Committed: https://crrev.com/b88d132f4cbc4a7f4de106542ae5895079049070 Cr-Commit-Position: refs/heads/master@{#39555}

Patch Set 1 #

Patch Set 2 : Updates. #

Total comments: 2

Patch Set 3 : missing gyp support. #

Total comments: 2

Patch Set 4 : Code comments. #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+277 lines, -296 lines) Patch
M BUILD.gn View 1 2 chunks +2 lines, -2 lines 0 comments Download
M src/ast/ast.cc View 1 4 chunks +4 lines, -4 lines 0 comments Download
M src/code-stub-assembler.cc View 1 1 chunk +7 lines, -22 lines 0 comments Download
M src/compiler/bytecode-graph-builder.cc View 1 2 chunks +8 lines, -14 lines 0 comments Download
M src/compiler/js-operator.h View 1 1 chunk +1 line, -1 line 0 comments Download
M src/compiler/type-hint-analyzer.h View 1 2 chunks +1 line, -4 lines 0 comments Download
M src/compiler/type-hint-analyzer.cc View 1 2 chunks +1 line, -27 lines 0 comments Download
D src/compiler/type-hints.h View 1 1 chunk +0 lines, -74 lines 0 comments Download
D src/compiler/type-hints.cc View 1 1 chunk +0 lines, -93 lines 0 comments Download
M src/objects-printer.cc View 1 2 3 1 chunk +10 lines, -0 lines 0 comments Download
M src/runtime-profiler.cc View 1 1 chunk +4 lines, -1 line 0 comments Download
M src/type-feedback-vector.h View 1 6 chunks +80 lines, -2 lines 0 comments Download
M src/type-feedback-vector.cc View 1 2 3 4 chunks +47 lines, -0 lines 0 comments Download
M src/type-feedback-vector-inl.h View 1 2 3 5 chunks +68 lines, -3 lines 1 comment Download
A + src/type-hints.h View 1 2 chunks +3 lines, -5 lines 0 comments Download
A + src/type-hints.cc View 1 2 chunks +1 line, -3 lines 0 comments Download
M src/v8.gyp View 1 2 2 chunks +2 lines, -2 lines 0 comments Download
M test/cctest/interpreter/test-interpreter.cc View 1 16 chunks +37 lines, -37 lines 0 comments Download
M test/cctest/test-feedback-vector.cc View 1 1 chunk +1 line, -2 lines 0 comments Download

Messages

Total messages: 16 (8 generated)
mvstanton
Hi Mythri, hi Benedikt, Here is the change we discussed. Thanks for the look! --Mike
4 years, 3 months ago (2016-09-20 11:47:42 UTC) #2
Benedikt Meurer
LGTM from my side. https://codereview.chromium.org/2342853002/diff/20001/src/type-feedback-vector.cc File src/type-feedback-vector.cc (right): https://codereview.chromium.org/2342853002/diff/20001/src/type-feedback-vector.cc#newcode206 src/type-feedback-vector.cc:206: return "iINTERPRETER_BINARYOP_IC"; Nit: Remove the ...
4 years, 3 months ago (2016-09-20 11:52:35 UTC) #5
mythria
Thanks, lgtm with a minor comment. https://codereview.chromium.org/2342853002/diff/40001/src/objects-printer.cc File src/objects-printer.cc (right): https://codereview.chromium.org/2342853002/diff/40001/src/objects-printer.cc#newcode754 src/objects-printer.cc:754: case FeedbackVectorSlotKind::INTERPRETER_COMPARE_IC: Would ...
4 years, 3 months ago (2016-09-20 12:35:16 UTC) #8
mvstanton
Thanks, addressed y'alls comments. Uploading... --Mike https://codereview.chromium.org/2342853002/diff/40001/src/objects-printer.cc File src/objects-printer.cc (right): https://codereview.chromium.org/2342853002/diff/40001/src/objects-printer.cc#newcode754 src/objects-printer.cc:754: case FeedbackVectorSlotKind::INTERPRETER_COMPARE_IC: On ...
4 years, 3 months ago (2016-09-20 13:19:23 UTC) #9
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/2342853002/60001
4 years, 3 months ago (2016-09-20 13:19:36 UTC) #12
commit-bot: I haz the power
Committed patchset #4 (id:60001)
4 years, 3 months ago (2016-09-20 13:53:40 UTC) #13
commit-bot: I haz the power
Patchset 4 (id:??) landed as https://crrev.com/b88d132f4cbc4a7f4de106542ae5895079049070 Cr-Commit-Position: refs/heads/master@{#39555}
4 years, 3 months ago (2016-09-20 13:54:58 UTC) #15
Benedikt Meurer
4 years, 3 months ago (2016-09-20 17:15:00 UTC) #16
Message was sent while issue was closed.
https://codereview.chromium.org/2342853002/diff/60001/src/type-feedback-vecto...
File src/type-feedback-vector-inl.h (right):

https://codereview.chromium.org/2342853002/diff/60001/src/type-feedback-vecto...
src/type-feedback-vector-inl.h:173: if (code_is_interpreted) continue;
Ops, this is missing an exclamation mark.

Powered by Google App Engine
This is Rietveld 408576698