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

Issue 1437873002: [Interpreter] Add support for Call bytecode to bytecode graph builder. (Closed)

Created:
5 years, 1 month ago by rmcilroy
Modified:
5 years, 1 month ago
CC:
v8-reviews_googlegroups.com, rmcilroy, Michael Starzinger
Base URL:
https://chromium.googlesource.com/v8/v8.git@mythri_load
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[Interpreter] Add support for Call bytecode to bytecode graph builder. Adds support for visiting the Call bytecode to the bytecode graph builder. This change also adds the call type feedback slot to the Call bytecode. This is not currently used by the interpreter, but is used by the graph builder. Also adds a CallWide varient of the Call bytecode, and adds the kCount16 operand type. BUG=v8:4280 LOG=N

Patch Set 1 #

Total comments: 2

Patch Set 2 : Move commments #

Patch Set 3 : Update to directly build bytecode in unittest #

Total comments: 3
Unified diffs Side-by-side diffs Delta from patch set Stats (+462 lines, -105 lines) Patch
M src/compiler/bytecode-graph-builder.h View 1 chunk +6 lines, -0 lines 0 comments Download
M src/compiler/bytecode-graph-builder.cc View 1 4 chunks +45 lines, -4 lines 2 comments Download
M src/compiler/interpreter-assembler.cc View 1 chunk +15 lines, -3 lines 0 comments Download
M src/interpreter/bytecode-array-builder.h View 2 chunks +3 lines, -1 line 0 comments Download
M src/interpreter/bytecode-array-builder.cc View 3 chunks +19 lines, -3 lines 0 comments Download
M src/interpreter/bytecode-array-iterator.cc View 1 chunk +5 lines, -1 line 0 comments Download
M src/interpreter/bytecode-generator.cc View 1 chunk +2 lines, -1 line 0 comments Download
M src/interpreter/bytecodes.h View 2 chunks +6 lines, -1 line 1 comment Download
M src/interpreter/bytecodes.cc View 1 chunk +4 lines, -2 lines 0 comments Download
M src/interpreter/interpreter.h View 1 chunk +3 lines, -0 lines 0 comments Download
M src/interpreter/interpreter.cc View 1 chunk +20 lines, -5 lines 0 comments Download
M test/cctest/compiler/test-run-bytecode-graph-builder.cc View 1 2 1 chunk +35 lines, -0 lines 0 comments Download
M test/cctest/interpreter/test-bytecode-generator.cc View 16 chunks +115 lines, -77 lines 0 comments Download
M test/cctest/interpreter/test-interpreter.cc View 4 chunks +4 lines, -4 lines 0 comments Download
M test/unittests/compiler/bytecode-graph-builder-unittest.cc View 1 2 4 chunks +106 lines, -2 lines 0 comments Download
M test/unittests/compiler/interpreter-assembler-unittest.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M test/unittests/compiler/node-test-utils.h View 2 chunks +7 lines, -0 lines 0 comments Download
M test/unittests/compiler/node-test-utils.cc View 1 2 2 chunks +61 lines, -0 lines 0 comments Download
M test/unittests/interpreter/bytecode-array-builder-unittest.cc View 1 chunk +2 lines, -1 line 0 comments Download

Dependent Patchsets:

Messages

Total messages: 12 (4 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1437873002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1437873002/1
5 years, 1 month ago (2015-11-11 16:31:32 UTC) #2
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: v8_android_arm_compile_rel on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_android_arm_compile_rel/builds/9787) v8_linux_arm64_rel on ...
5 years, 1 month ago (2015-11-11 16:32:28 UTC) #4
rmcilroy
This builds on Mythri's LoadIC CL https://codereview.chromium.org/1419373007/ Benedikt: Please take a look at compiler/ Orion ...
5 years, 1 month ago (2015-11-11 16:33:23 UTC) #6
Benedikt Meurer
LGTM on compiler.
5 years, 1 month ago (2015-11-12 06:43:29 UTC) #7
mythria
lgtm https://codereview.chromium.org/1437873002/diff/1/src/compiler/bytecode-graph-builder.cc File src/compiler/bytecode-graph-builder.cc (right): https://codereview.chromium.org/1437873002/diff/1/src/compiler/bytecode-graph-builder.cc#newcode586 src/compiler/bytecode-graph-builder.cc:586: AddEmptyFrameStateInputs(value); Just a note: I moved TODO to ...
5 years, 1 month ago (2015-11-12 09:18:36 UTC) #8
rmcilroy
https://codereview.chromium.org/1437873002/diff/1/src/compiler/bytecode-graph-builder.cc File src/compiler/bytecode-graph-builder.cc (right): https://codereview.chromium.org/1437873002/diff/1/src/compiler/bytecode-graph-builder.cc#newcode586 src/compiler/bytecode-graph-builder.cc:586: AddEmptyFrameStateInputs(value); On 2015/11/12 09:18:36, mythria wrote: > Just a ...
5 years, 1 month ago (2015-11-12 12:28:03 UTC) #9
oth
lgtm. https://codereview.chromium.org/1437873002/diff/40001/src/compiler/bytecode-graph-builder.cc File src/compiler/bytecode-graph-builder.cc (right): https://codereview.chromium.org/1437873002/diff/40001/src/compiler/bytecode-graph-builder.cc#newcode575 src/compiler/bytecode-graph-builder.cc:575: // register has been loaded with null / ...
5 years, 1 month ago (2015-11-13 12:24:06 UTC) #10
oth
5 years, 1 month ago (2015-11-17 09:55:55 UTC) #11
On 2015/11/13 12:24:06, oth wrote:
> lgtm.
> 
>
https://codereview.chromium.org/1437873002/diff/40001/src/compiler/bytecode-g...
> File src/compiler/bytecode-graph-builder.cc (right):
> 
>
https://codereview.chromium.org/1437873002/diff/40001/src/compiler/bytecode-g...
> src/compiler/bytecode-graph-builder.cc:575: // register has been loaded with
> null / undefined explicitly or we are sure it
> s/reciever/receiver/
> 
>
https://codereview.chromium.org/1437873002/diff/40001/src/compiler/bytecode-g...
> src/compiler/bytecode-graph-builder.cc:579: interpreter::Register reciever =
> iterator.GetRegisterOperand(1);
> s/reciever/receiver/
> 
>
https://codereview.chromium.org/1437873002/diff/40001/src/interpreter/bytecod...
> File src/interpreter/bytecodes.h (right):
> 
>
https://codereview.chromium.org/1437873002/diff/40001/src/interpreter/bytecod...
> src/interpreter/bytecodes.h:127: /* TODO(rmcilroy): Wide register operands
too?
> */                            \
> I might remove this TODO as it's not clear this is unique to call. We need to
> solve wide register operands in some sense but think we maybe able to solve
this
> with a fairly minimal change (translation layer in
> BytecodeArrayBuilder::Output). Have a strawman to discuss / put in the design
> doc. Also for constant pool entries.

Moving to a new CL to land on behalf of Ross:

https://codereview.chromium.org/1456453002

Powered by Google App Engine
This is Rietveld 408576698