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

Issue 2218703003: [turbofan] Add support for copy-on-write element stores. (Closed)

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

Description

[turbofan] Add support for copy-on-write element stores. This extends JSNativeContextSpecialization with support for stores to fast object/smi element backing stores that are marked as copy-on-write. In this case we first call the CopyFixedArray builtin to take a copy of the elements backing store, and then store the new elements back to the object, and finally perform the actual element store. R=epertoso@chromium.org BUG=v8:4470 Committed: https://crrev.com/ac98ad22f049a59c48387f1bab1590f135d219c6 Committed: https://crrev.com/b659a0ac2306303f0b7799fc884d57ca0c4dbf92 Cr-Original-Commit-Position: refs/heads/master@{#38370} Cr-Commit-Position: refs/heads/master@{#38392}

Patch Set 1 #

Total comments: 2

Patch Set 2 : Fix failing test. Address feedback. #

Patch Set 3 : Fix off-by-one loop iteration count. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+329 lines, -17 lines) Patch
M src/builtins/builtins.h View 1 chunk +3 lines, -0 lines 0 comments Download
M src/builtins/builtins-internal.cc View 1 2 2 chunks +128 lines, -1 line 0 comments Download
M src/code-factory.h View 1 chunk +2 lines, -0 lines 0 comments Download
M src/code-factory.cc View 1 chunk +6 lines, -0 lines 0 comments Download
M src/compiler/effect-control-linearizer.h View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M src/compiler/effect-control-linearizer.cc View 1 2 2 chunks +56 lines, -0 lines 0 comments Download
M src/compiler/js-graph.h View 2 chunks +2 lines, -0 lines 0 comments Download
M src/compiler/js-graph.cc View 1 chunk +5 lines, -0 lines 0 comments Download
M src/compiler/js-native-context-specialization.cc View 1 4 chunks +18 lines, -5 lines 0 comments Download
M src/compiler/load-elimination.h View 3 chunks +6 lines, -2 lines 0 comments Download
M src/compiler/load-elimination.cc View 5 chunks +44 lines, -0 lines 0 comments Download
M src/compiler/opcodes.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/compiler/pipeline.cc View 2 chunks +4 lines, -2 lines 0 comments Download
M src/compiler/simplified-lowering.cc View 1 2 1 chunk +3 lines, -0 lines 0 comments Download
M src/compiler/simplified-operator.h View 2 chunks +5 lines, -0 lines 0 comments Download
M src/compiler/simplified-operator.cc View 2 chunks +14 lines, -0 lines 0 comments Download
M src/compiler/typer.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M src/compiler/verifier.cc View 1 chunk +5 lines, -0 lines 0 comments Download
M src/interface-descriptors.h View 2 chunks +7 lines, -0 lines 0 comments Download
M test/unittests/compiler/load-elimination-unittest.cc View 8 chunks +14 lines, -7 lines 0 comments Download

Messages

Total messages: 31 (17 generated)
Benedikt Meurer
4 years, 4 months ago (2016-08-05 09:56:46 UTC) #1
epertoso
https://codereview.chromium.org/2218703003/diff/1/src/builtins/builtins-internal.cc File src/builtins/builtins-internal.cc (right): https://codereview.chromium.org/2218703003/diff/1/src/builtins/builtins-internal.cc#newcode94 src/builtins/builtins-internal.cc:94: var_index.Bind(assembler->IntPtrConstant(0)); nit: if you bind this to FixedArray::kHeaderSize - ...
4 years, 4 months ago (2016-08-05 10:21:41 UTC) #4
Benedikt Meurer
https://codereview.chromium.org/2218703003/diff/1/src/builtins/builtins-internal.cc File src/builtins/builtins-internal.cc (right): https://codereview.chromium.org/2218703003/diff/1/src/builtins/builtins-internal.cc#newcode94 src/builtins/builtins-internal.cc:94: var_index.Bind(assembler->IntPtrConstant(0)); Nice idea! Done.
4 years, 4 months ago (2016-08-05 10:30:26 UTC) #5
epertoso
lgtm
4 years, 4 months ago (2016-08-05 10:36:00 UTC) #8
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/2218703003/20001
4 years, 4 months ago (2016-08-05 10:42:52 UTC) #11
commit-bot: I haz the power
Committed patchset #2 (id:20001)
4 years, 4 months ago (2016-08-05 10:57:15 UTC) #12
commit-bot: I haz the power
Patchset 2 (id:??) landed as https://crrev.com/ac98ad22f049a59c48387f1bab1590f135d219c6 Cr-Commit-Position: refs/heads/master@{#38370}
4 years, 4 months ago (2016-08-05 10:58:46 UTC) #14
Benedikt Meurer
A revert of this CL (patchset #2 id:20001) has been created in https://codereview.chromium.org/2220513002/ by bmeurer@chromium.org. ...
4 years, 4 months ago (2016-08-05 12:01:49 UTC) #15
Michael Achenbach
Makes kraken crashy: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20debug%20-%20avx2/builds/8992 Tested locally that it comes from this CL.
4 years, 4 months ago (2016-08-05 12:07:17 UTC) #16
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/2218703003/40001
4 years, 4 months ago (2016-08-05 13:17:58 UTC) #23
commit-bot: I haz the power
Try jobs failed on following builders: v8_linux_arm64_rel_ng on master.tryserver.v8 (JOB_TIMED_OUT, no build URL)
4 years, 4 months ago (2016-08-05 15:03:46 UTC) #25
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/2218703003/40001
4 years, 4 months ago (2016-08-05 15:04:55 UTC) #27
commit-bot: I haz the power
Committed patchset #3 (id:40001)
4 years, 4 months ago (2016-08-05 15:29:03 UTC) #29
commit-bot: I haz the power
4 years, 4 months ago (2016-08-05 15:32:23 UTC) #31
Message was sent while issue was closed.
Patchset 3 (id:??) landed as
https://crrev.com/b659a0ac2306303f0b7799fc884d57ca0c4dbf92
Cr-Commit-Position: refs/heads/master@{#38392}

Powered by Google App Engine
This is Rietveld 408576698