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

Issue 1649723002: [compiler] Extend the functionality of CodeStubAssembler (Closed)

Created:
4 years, 10 months ago by danno
Modified:
4 years, 10 months ago
CC:
v8-reviews_googlegroups.com, epertoso
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[compiler] Extend the functionality of CodeStubAssembler After this change, the functionality of the CodeStubAssembler should be sufficient to generate non-trivial stubs (e.g. the KeyedLoadIC) with control flow, variables and probing of internal meta data structures. Specifically this patch: * introduces a Label class, which allows stubs to construct graphs that don't have linear control graphs. * introduces a Variable class. Variables can be bound to Node* values at different points in a non-linear control flow graph. In conjunction with the Label machinery, the CodeStubAssembler ensures that Phi nodes are inserted at the "minimal" set of merge points. * adds Tail calling support to other Stubs and to any arbitrary code whose interface can be described by a CallInterfaceDescriptor. * provides new macros for accessing FixedArray elements that are optimized for use with Smi values. Committed: https://crrev.com/1f28904b2487a52d75e4c4fcd4a5a1abaf3456f5 Cr-Commit-Position: refs/heads/master@{#33664}

Patch Set 1 #

Patch Set 2 : Latest #

Patch Set 3 : Latest #

Total comments: 24

Patch Set 4 : Review feedback #

Patch Set 5 : Nit #

Patch Set 6 : Review feedback, fix tests #

Patch Set 7 : Fix windows #

Patch Set 8 : Fix build #

Patch Set 9 : Fix release build #

Unified diffs Side-by-side diffs Delta from patch set Stats (+624 lines, -43 lines) Patch
M src/compiler/code-stub-assembler.h View 1 2 3 4 5 5 chunks +134 lines, -10 lines 0 comments Download
M src/compiler/code-stub-assembler.cc View 1 2 3 4 5 6 7 8 7 chunks +280 lines, -14 lines 0 comments Download
M src/compiler/graph.h View 1 chunk +4 lines, -4 lines 0 comments Download
M src/compiler/graph.cc View 1 1 chunk +2 lines, -4 lines 0 comments Download
M src/compiler/raw-machine-assembler.h View 1 3 chunks +14 lines, -7 lines 0 comments Download
M src/compiler/raw-machine-assembler.cc View 1 2 3 4 chunks +63 lines, -4 lines 0 comments Download
M test/cctest/compiler/test-code-stub-assembler.cc View 1 1 chunk +127 lines, -0 lines 0 comments Download

Messages

Total messages: 25 (14 generated)
danno
PTAL
4 years, 10 months ago (2016-01-28 10:39:59 UTC) #2
Michael Starzinger
LGTM. Nice stuff, just nits to address. https://codereview.chromium.org/1649723002/diff/40001/src/compiler/code-stub-assembler.cc File src/compiler/code-stub-assembler.cc (right): https://codereview.chromium.org/1649723002/diff/40001/src/compiler/code-stub-assembler.cc#newcode174 src/compiler/code-stub-assembler.cc:174: USE(roots_array_start); nit: ...
4 years, 10 months ago (2016-02-01 16:04:12 UTC) #4
danno
Feedback addressed. https://codereview.chromium.org/1649723002/diff/40001/src/compiler/code-stub-assembler.cc File src/compiler/code-stub-assembler.cc (right): https://codereview.chromium.org/1649723002/diff/40001/src/compiler/code-stub-assembler.cc#newcode174 src/compiler/code-stub-assembler.cc:174: USE(roots_array_start); On 2016/02/01 16:04:12, Michael Starzinger wrote: ...
4 years, 10 months ago (2016-02-02 07:52:55 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1649723002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1649723002/100001
4 years, 10 months ago (2016-02-02 07:53:58 UTC) #8
commit-bot: I haz the power
Try jobs failed on following builders: v8_linux_gcc_compile_rel on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_gcc_compile_rel/builds/11323)
4 years, 10 months ago (2016-02-02 08:00:22 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1649723002/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1649723002/120001
4 years, 10 months ago (2016-02-02 08:03:27 UTC) #13
commit-bot: I haz the power
Try jobs failed on following builders: v8_win64_rel_ng on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_win64_rel_ng/builds/2329)
4 years, 10 months ago (2016-02-02 08:09:33 UTC) #15
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1649723002/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1649723002/140001
4 years, 10 months ago (2016-02-02 08:42:47 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1649723002/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1649723002/160001
4 years, 10 months ago (2016-02-02 08:57:03 UTC) #21
commit-bot: I haz the power
Committed patchset #9 (id:160001)
4 years, 10 months ago (2016-02-02 09:42:25 UTC) #23
commit-bot: I haz the power
4 years, 10 months ago (2016-02-02 09:43:05 UTC) #25
Message was sent while issue was closed.
Patchset 9 (id:??) landed as
https://crrev.com/1f28904b2487a52d75e4c4fcd4a5a1abaf3456f5
Cr-Commit-Position: refs/heads/master@{#33664}

Powered by Google App Engine
This is Rietveld 408576698