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

Issue 2355793003: [stubs] Port SubStringStub to TurboFan (Closed)

Created:
4 years, 3 months ago by jgruber
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
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[stubs] Port SubStringStub to TurboFan This ports the platform-specific SubStringStub to TurboFan. It also contains a minor bug-fix for the case when the requested substring length equals the subject string length, but the start index is not equal to 0. The old stub implementation returned the subject string, while the new implementation calls into runtime, which finally results in a thrown exception. BUG=v8:5415 Committed: https://crrev.com/49be31921536716706a6790fbbf9c346b975af16 Committed: https://crrev.com/261d750ea54438089eed71d1b7f57fe741e44ce7 Cr-Original-Commit-Position: refs/heads/master@{#39653} Cr-Commit-Position: refs/heads/master@{#39851}

Patch Set 1 #

Patch Set 2 : Fix one/two typo #

Patch Set 3 : Rebase #

Patch Set 4 : Turn proper substring case into straight-line path #

Total comments: 3

Patch Set 5 : Fix bug in handling of from/to indices #

Total comments: 6

Patch Set 6 : Address comments #

Patch Set 7 : Address comments #

Total comments: 12

Patch Set 8 : Address comments #

Patch Set 9 : Do not store pointer into external string in tagged variable #

Patch Set 10 : Do not store pointer into external string in tagged variable #

Patch Set 11 : Rebase and simplification #

Patch Set 12 : Compilation fixes #

Patch Set 13 : Remove garbage file #

Total comments: 4

Patch Set 14 : Address comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+441 lines, -2044 lines) Patch
M src/arm/code-stubs-arm.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -225 lines 0 comments Download
M src/arm64/code-stubs-arm64.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -251 lines 0 comments Download
M src/code-stub-assembler.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 5 chunks +29 lines, -1 line 0 comments Download
M src/code-stub-assembler.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 4 chunks +387 lines, -1 line 0 comments Download
M src/code-stubs.h View 1 2 3 4 5 6 7 8 1 chunk +15 lines, -4 lines 0 comments Download
M src/code-stubs.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +9 lines, -0 lines 0 comments Download
M src/full-codegen/full-codegen.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M src/ia32/code-stubs-ia32.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -221 lines 0 comments Download
M src/mips/code-stubs-mips.cc View 1 chunk +0 lines, -223 lines 0 comments Download
M src/mips64/code-stubs-mips64.cc View 1 chunk +0 lines, -223 lines 0 comments Download
M src/ppc/code-stubs-ppc.cc View 1 chunk +0 lines, -224 lines 0 comments Download
M src/s390/code-stubs-s390.cc View 1 chunk +0 lines, -229 lines 0 comments Download
M src/x64/code-stubs-x64.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -221 lines 0 comments Download
M src/x87/code-stubs-x87.cc View 1 2 3 4 5 6 7 8 1 chunk +0 lines, -221 lines 0 comments Download

Messages

Total messages: 72 (56 generated)
jgruber
https://codereview.chromium.org/2355793003/diff/60001/src/code-stub-assembler.cc File src/code-stub-assembler.cc (right): https://codereview.chromium.org/2355793003/diff/60001/src/code-stub-assembler.cc#newcode2594 src/code-stub-assembler.cc:2594: // TODO(jgruber): Add an additional case for substring of ...
4 years, 3 months ago (2016-09-21 09:57:11 UTC) #20
Benedikt Meurer
Some highlevel comments plus a nit. Will take another look after Igors review. Can you ...
4 years, 3 months ago (2016-09-21 10:25:00 UTC) #21
jgruber
https://codereview.chromium.org/2355793003/diff/80001/src/code-stub-assembler.cc File src/code-stub-assembler.cc (right): https://codereview.chromium.org/2355793003/diff/80001/src/code-stub-assembler.cc#newcode1407 src/code-stub-assembler.cc:1407: MachineRepresentation::kWord32); On 2016/09/21 10:25:00, Benedikt Meurer wrote: > IntPtrConstant ...
4 years, 3 months ago (2016-09-21 11:38:03 UTC) #29
Igor Sheludko
lgtm with nits: https://codereview.chromium.org/2355793003/diff/120001/src/code-stub-assembler.cc File src/code-stub-assembler.cc (right): https://codereview.chromium.org/2355793003/diff/120001/src/code-stub-assembler.cc#newcode2557 src/code-stub-assembler.cc:2557: var_instance_type.Bind(Int32Constant(0)); You could probably avoid this ...
4 years, 2 months ago (2016-09-22 12:23:38 UTC) #33
jgruber
Thanks for the review! Replies inline. https://codereview.chromium.org/2355793003/diff/120001/src/code-stub-assembler.cc File src/code-stub-assembler.cc (right): https://codereview.chromium.org/2355793003/diff/120001/src/code-stub-assembler.cc#newcode2557 src/code-stub-assembler.cc:2557: var_instance_type.Bind(Int32Constant(0)); On 2016/09/22 ...
4 years, 2 months ago (2016-09-22 13:22:41 UTC) #36
Benedikt Meurer
Thanks. LGTM from my side.
4 years, 2 months ago (2016-09-22 17:55:18 UTC) #39
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/2355793003/140001
4 years, 2 months ago (2016-09-23 06:47:33 UTC) #42
commit-bot: I haz the power
Committed patchset #8 (id:140001)
4 years, 2 months ago (2016-09-23 06:50:21 UTC) #44
commit-bot: I haz the power
Patchset 8 (id:??) landed as https://crrev.com/49be31921536716706a6790fbbf9c346b975af16 Cr-Commit-Position: refs/heads/master@{#39653}
4 years, 2 months ago (2016-09-23 06:50:42 UTC) #46
Michael Hablich
A revert of this CL (patchset #8 id:140001) has been created in https://codereview.chromium.org/2365413002/ by hablich@chromium.org. ...
4 years, 2 months ago (2016-09-26 14:32:06 UTC) #47
jgruber
PTAL. This fixes the recent canary crash by never storing the pointer into the external ...
4 years, 2 months ago (2016-09-28 08:50:39 UTC) #63
Igor Sheludko
lgtm with nits: https://codereview.chromium.org/2355793003/diff/240001/src/code-stub-assembler.cc File src/code-stub-assembler.cc (right): https://codereview.chromium.org/2355793003/diff/240001/src/code-stub-assembler.cc#newcode1708 src/code-stub-assembler.cc:1708: Node* byte_count = SmiToWord32(character_count); Do SmiUntag() ...
4 years, 2 months ago (2016-09-28 16:04:26 UTC) #64
jgruber
https://codereview.chromium.org/2355793003/diff/240001/src/code-stub-assembler.cc File src/code-stub-assembler.cc (right): https://codereview.chromium.org/2355793003/diff/240001/src/code-stub-assembler.cc#newcode1708 src/code-stub-assembler.cc:1708: Node* byte_count = SmiToWord32(character_count); On 2016/09/28 16:04:26, Igor Sheludko ...
4 years, 2 months ago (2016-09-29 07:06:41 UTC) #65
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/2355793003/260001
4 years, 2 months ago (2016-09-29 07:06:59 UTC) #68
commit-bot: I haz the power
Committed patchset #14 (id:260001)
4 years, 2 months ago (2016-09-29 07:34:51 UTC) #70
commit-bot: I haz the power
4 years, 2 months ago (2016-09-29 07:35:12 UTC) #72
Message was sent while issue was closed.
Patchset 14 (id:??) landed as
https://crrev.com/261d750ea54438089eed71d1b7f57fe741e44ce7
Cr-Commit-Position: refs/heads/master@{#39851}

Powered by Google App Engine
This is Rietveld 408576698