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

Issue 2304573004: Port FastCloneShallowArrayStub to Turbofan (Closed)

Created:
4 years, 3 months ago by klaasb
Modified:
4 years, 2 months ago
CC:
v8-reviews_googlegroups.com, v8-mips-ports_googlegroups.com, v8-x87-ports_googlegroups.com, v8-ppc-ports_googlegroups.com
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

Port FastCloneShallowArrayStub to Turbofan Refactors CodeStubAssembler::AllocateJSArray to share code. BUG=chromium:608675 Committed: https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b Cr-Commit-Position: refs/heads/master@{#39550}

Patch Set 1 #

Patch Set 2 : fixes, enable last fast path #

Patch Set 3 : testing #

Patch Set 4 : testing #

Patch Set 5 : use CopyFixedArrayElements #

Patch Set 6 : testing #

Patch Set 7 : cleanup #

Patch Set 8 : test with allocating all at once #

Patch Set 9 : remove unused #

Patch Set 10 : refactor and share code with AllocateJSArray #

Patch Set 11 : cleanup #

Patch Set 12 : remove unused hydrogen code #

Patch Set 13 : rebase #

Patch Set 14 : rebase again #

Patch Set 15 : cleanup mode a bit #

Total comments: 22

Patch Set 16 : comments from Ross #

Total comments: 10

Patch Set 17 : comments from ross 2 #

Total comments: 4

Patch Set 18 : comments from Michi #

Total comments: 2

Patch Set 19 : also make ParameterMode capacity-specific on AllocateJSArray #

Patch Set 20 : break live range of allocation_site so instruction selection uses nice addressing modes #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+343 lines, -244 lines) Patch
M src/bailout-reason.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +2 lines, -0 lines 0 comments Download
M src/code-stub-assembler.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 4 chunks +30 lines, -6 lines 0 comments Download
M src/code-stub-assembler.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 7 chunks +85 lines, -33 lines 0 comments Download
M src/code-stubs.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +14 lines, -8 lines 0 comments Download
M src/code-stubs.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 5 chunks +198 lines, -12 lines 1 comment Download
M src/code-stubs-hydrogen.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +1 line, -79 lines 0 comments Download
M src/crankshaft/hydrogen.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -14 lines 0 comments Download
M src/crankshaft/hydrogen.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +0 lines, -87 lines 0 comments Download
M src/deoptimize-reason.h View 1 2 3 4 5 1 chunk +0 lines, -1 line 0 comments Download
M src/full-codegen/arm/full-codegen-arm.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -0 lines 0 comments Download
M src/full-codegen/arm64/full-codegen-arm64.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -0 lines 0 comments Download
M src/full-codegen/ia32/full-codegen-ia32.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -0 lines 0 comments Download
M src/full-codegen/mips/full-codegen-mips.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -0 lines 0 comments Download
M src/full-codegen/mips64/full-codegen-mips64.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -0 lines 0 comments Download
M src/full-codegen/ppc/full-codegen-ppc.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -0 lines 0 comments Download
M src/full-codegen/s390/full-codegen-s390.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -0 lines 0 comments Download
M src/full-codegen/x64/full-codegen-x64.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -0 lines 0 comments Download
M src/full-codegen/x87/full-codegen-x87.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -0 lines 0 comments Download
M test/cctest/interpreter/bytecode_expectations/Generators.golden View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 4 chunks +4 lines, -4 lines 0 comments Download

Messages

Total messages: 65 (50 generated)
klaasb
Please take a look. I tried reducing register pressure for the stub, but even reloading ...
4 years, 3 months ago (2016-09-13 13:41:04 UTC) #44
rmcilroy
Overall looks good. A couple of comments. https://codereview.chromium.org/2304573004/diff/280001/src/code-stub-assembler.cc File src/code-stub-assembler.cc (right): https://codereview.chromium.org/2304573004/diff/280001/src/code-stub-assembler.cc#newcode1381 src/code-stub-assembler.cc:1381: Node* CodeStubAssembler::AllocateEmptyJSArray(ElementsKind ...
4 years, 3 months ago (2016-09-13 20:29:59 UTC) #45
klaasb
PTAL https://codereview.chromium.org/2304573004/diff/280001/src/code-stub-assembler.cc File src/code-stub-assembler.cc (right): https://codereview.chromium.org/2304573004/diff/280001/src/code-stub-assembler.cc#newcode1381 src/code-stub-assembler.cc:1381: Node* CodeStubAssembler::AllocateEmptyJSArray(ElementsKind kind, On 2016/09/13 20:29:59, rmcilroy wrote: ...
4 years, 3 months ago (2016-09-14 18:24:52 UTC) #46
klaasb
jarin@chromium.org: Please review deletions in crankshaft in particular.
4 years, 3 months ago (2016-09-15 11:16:55 UTC) #49
rmcilroy
Looks good overall, only real comment regards optional capacity parameter on AllocateUninitializedJSArray https://codereview.chromium.org/2304573004/diff/280001/src/code-stubs.cc File src/code-stubs.cc ...
4 years, 3 months ago (2016-09-16 08:53:52 UTC) #50
Jarin
lgtm for the crankshaft bit.
4 years, 3 months ago (2016-09-16 16:19:37 UTC) #52
klaasb
https://codereview.chromium.org/2304573004/diff/300001/src/code-stub-assembler.cc File src/code-stub-assembler.cc (right): https://codereview.chromium.org/2304573004/diff/300001/src/code-stub-assembler.cc#newcode1409 src/code-stub-assembler.cc:1409: if (capacity != nullptr) { On 2016/09/16 08:53:51, rmcilroy ...
4 years, 3 months ago (2016-09-19 12:18:00 UTC) #53
Michael Starzinger
https://codereview.chromium.org/2304573004/diff/320001/src/code-stub-assembler.h File src/code-stub-assembler.h (right): https://codereview.chromium.org/2304573004/diff/320001/src/code-stub-assembler.h#newcode335 src/code-stub-assembler.h:335: ParameterMode capacity_mode = INTEGER_PARAMETERS); It is somewhat un-intuitive that ...
4 years, 3 months ago (2016-09-19 14:20:38 UTC) #54
klaasb
https://codereview.chromium.org/2304573004/diff/320001/src/code-stub-assembler.h File src/code-stub-assembler.h (right): https://codereview.chromium.org/2304573004/diff/320001/src/code-stub-assembler.h#newcode335 src/code-stub-assembler.h:335: ParameterMode capacity_mode = INTEGER_PARAMETERS); On 2016/09/19 14:20:38, Michael Starzinger ...
4 years, 3 months ago (2016-09-19 14:46:37 UTC) #55
rmcilroy
LGTM, thanks. https://codereview.chromium.org/2304573004/diff/340001/src/code-stub-assembler.h File src/code-stub-assembler.h (right): https://codereview.chromium.org/2304573004/diff/340001/src/code-stub-assembler.h#newcode342 src/code-stub-assembler.h:342: ParameterMode mode = INTEGER_PARAMETERS); capacity_mode here too ...
4 years, 3 months ago (2016-09-19 15:47:48 UTC) #56
klaasb
https://codereview.chromium.org/2304573004/diff/340001/src/code-stub-assembler.h File src/code-stub-assembler.h (right): https://codereview.chromium.org/2304573004/diff/340001/src/code-stub-assembler.h#newcode342 src/code-stub-assembler.h:342: ParameterMode mode = INTEGER_PARAMETERS); On 2016/09/19 15:47:48, rmcilroy wrote: ...
4 years, 3 months ago (2016-09-19 18:39:25 UTC) #57
Michael Starzinger
LGTM.
4 years, 3 months ago (2016-09-20 09:01:17 UTC) #58
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/2304573004/380001
4 years, 3 months ago (2016-09-20 12:04:53 UTC) #61
commit-bot: I haz the power
Committed patchset #20 (id:380001)
4 years, 3 months ago (2016-09-20 12:35:43 UTC) #63
commit-bot: I haz the power
4 years, 3 months ago (2016-09-20 12:36:40 UTC) #65
Message was sent while issue was closed.
Patchset 20 (id:??) landed as
https://crrev.com/e2455873e6146d57b453ce15eab7cd957bbca08b
Cr-Commit-Position: refs/heads/master@{#39550}

Powered by Google App Engine
This is Rietveld 408576698