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

Issue 2649703002: [Atomics] Make Atomics.compareExchange a builtin using TF (Closed)

Created:
3 years, 11 months ago by aseemgarg
Modified:
3 years, 9 months ago
CC:
v8-reviews_googlegroups.com, v8-x87-ports_googlegroups.com
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[Atomics] Make Atomics.compareExchange a builtin using TF BUG=v8:4614 R=binji@chromium.org Review-Url: https://codereview.chromium.org/2649703002 Cr-Commit-Position: refs/heads/master@{#43878} Committed: https://chromium.googlesource.com/v8/v8/+/82b5c8c9440781976ce23cf8fcabd250ef2bee02

Patch Set 1 #

Patch Set 2 : rebase #

Patch Set 3 : arm + arm64 #

Patch Set 4 : rebase #

Patch Set 5 : [Atomics] Make Atomics.compareExchange a builtin using TF #

Patch Set 6 : dmb #

Total comments: 1

Patch Set 7 : rebase #

Patch Set 8 : arm and arm64 #

Patch Set 9 : rebase #

Patch Set 10 : [Atomics] Make Atomics.compareExchange a builtin using TF #

Patch Set 11 : PPC and S390 #

Total comments: 4

Patch Set 12 : use TF_BUILTIN macro #

Total comments: 6

Patch Set 13 : fix mips #

Patch Set 14 : [Atomics] Make Atomics.compareExchange a builtin using TF #

Total comments: 3

Patch Set 15 : rebase and have runtime function for mips, ppc and S390 #

Patch Set 16 : lock x64 and ia32 #

Patch Set 17 : rebase and move cmpxchg to builtins-sharedarraybuffer-gen.cc #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+570 lines, -77 lines) Patch
M src/builtins/builtins.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -1 line 0 comments Download
M src/builtins/builtins-sharedarraybuffer.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 6 chunks +0 lines, -72 lines 0 comments Download
M src/builtins/builtins-sharedarraybuffer-gen.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +82 lines, -0 lines 0 comments Download
M src/compiler/arm/code-generator-arm.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +39 lines, -0 lines 0 comments Download
M src/compiler/arm/instruction-selector-arm.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +39 lines, -0 lines 0 comments Download
M src/compiler/arm64/code-generator-arm64.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 3 chunks +42 lines, -3 lines 1 comment Download
M src/compiler/arm64/instruction-selector-arm64.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +39 lines, -0 lines 0 comments Download
M src/compiler/code-assembler.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +4 lines, -0 lines 0 comments Download
M src/compiler/code-assembler.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +7 lines, -0 lines 0 comments Download
M src/compiler/ia32/code-generator-ia32.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +29 lines, -0 lines 0 comments Download
M src/compiler/ia32/instruction-selector-ia32.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +42 lines, -0 lines 0 comments Download
M src/compiler/instruction-codes.h View 1 1 chunk +5 lines, -0 lines 0 comments Download
M src/compiler/instruction-scheduler.cc View 1 2 3 4 5 6 1 chunk +5 lines, -0 lines 0 comments Download
M src/compiler/instruction-selector.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +5 lines, -0 lines 0 comments Download
M src/compiler/machine-graph-verifier.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +23 lines, -0 lines 0 comments Download
M src/compiler/machine-operator.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +4 lines, -0 lines 0 comments Download
M src/compiler/machine-operator.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3 chunks +29 lines, -0 lines 0 comments Download
M src/compiler/mips/code-generator-mips.cc View 1 2 1 chunk +5 lines, -0 lines 0 comments Download
M src/compiler/mips/instruction-selector-mips.cc View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M src/compiler/mips64/code-generator-mips64.cc View 1 2 1 chunk +5 lines, -0 lines 0 comments Download
M src/compiler/mips64/instruction-selector-mips64.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +4 lines, -0 lines 0 comments Download
M src/compiler/opcodes.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +1 line, -0 lines 0 comments Download
M src/compiler/ppc/code-generator-ppc.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +5 lines, -0 lines 0 comments Download
M src/compiler/ppc/instruction-selector-ppc.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +4 lines, -0 lines 0 comments Download
M src/compiler/raw-machine-assembler.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +6 lines, -0 lines 0 comments Download
M src/compiler/s390/code-generator-s390.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +8 lines, -0 lines 0 comments Download
M src/compiler/s390/instruction-selector-s390.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +4 lines, -0 lines 0 comments Download
M src/compiler/verifier.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +1 line, -0 lines 0 comments Download
M src/compiler/x64/code-generator-x64.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +29 lines, -0 lines 0 comments Download
M src/compiler/x64/instruction-selector-x64.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +42 lines, -0 lines 0 comments Download
M src/objects.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +2 lines, -1 line 0 comments Download
M src/runtime/runtime.h 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/runtime/runtime-atomics.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 4 chunks +54 lines, -0 lines 0 comments Download

Depends on Patchset:

Messages

Total messages: 77 (59 generated)
aseemgarg
There is a bug somewhere that is causing failures for Int16 and Int8 types.
3 years, 11 months ago (2017-01-21 13:27:20 UTC) #1
commit-bot: I haz the power
This CL has an open dependency (Issue 2623633003 Patch 320001). Please resolve the dependency and ...
3 years, 10 months ago (2017-02-24 13:40:02 UTC) #4
binji
https://codereview.chromium.org/2649703002/diff/100001/src/compiler/arm/code-generator-arm.cc File src/compiler/arm/code-generator-arm.cc (right): https://codereview.chromium.org/2649703002/diff/100001/src/compiler/arm/code-generator-arm.cc#newcode441 src/compiler/arm/code-generator-arm.cc:441: __ dmb(ISH); \ The optimized code is a bit ...
3 years, 9 months ago (2017-02-28 23:28:53 UTC) #20
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/2649703002/180001
3 years, 9 months ago (2017-03-07 01:21:33 UTC) #29
commit-bot: I haz the power
No L-G-T-M from a valid reviewer yet. CQ run can only be started by full ...
3 years, 9 months ago (2017-03-07 01:21:37 UTC) #31
aseemgarg
Please review.
3 years, 9 months ago (2017-03-08 23:01:30 UTC) #40
Jakob Kummerow
DBC. https://codereview.chromium.org/2649703002/diff/200001/src/builtins/builtins-sharedarraybuffer.cc File src/builtins/builtins-sharedarraybuffer.cc (right): https://codereview.chromium.org/2649703002/diff/200001/src/builtins/builtins-sharedarraybuffer.cc#newcode350 src/builtins/builtins-sharedarraybuffer.cc:350: void Builtins::Generate_AtomicsCompareExchange( please use the TF_BUILTIN macro to ...
3 years, 9 months ago (2017-03-09 13:43:42 UTC) #41
aseemgarg
https://codereview.chromium.org/2649703002/diff/200001/src/builtins/builtins-sharedarraybuffer.cc File src/builtins/builtins-sharedarraybuffer.cc (right): https://codereview.chromium.org/2649703002/diff/200001/src/builtins/builtins-sharedarraybuffer.cc#newcode350 src/builtins/builtins-sharedarraybuffer.cc:350: void Builtins::Generate_AtomicsCompareExchange( On 2017/03/09 13:43:42, Jakob Kummerow wrote: > ...
3 years, 9 months ago (2017-03-10 19:55:22 UTC) #43
Jakob Kummerow
Thanks, src/builtins/* LGTM with nits. https://codereview.chromium.org/2649703002/diff/220001/src/builtins/builtins-sharedarraybuffer.cc File src/builtins/builtins-sharedarraybuffer.cc (right): https://codereview.chromium.org/2649703002/diff/220001/src/builtins/builtins-sharedarraybuffer.cc#newcode364 src/builtins/builtins-sharedarraybuffer.cc:364: a.Return(a.CallRuntime(Runtime::kAtomicsCompareExchange, context, array, s/a.//g ...
3 years, 9 months ago (2017-03-10 21:05:39 UTC) #48
aseemgarg
https://codereview.chromium.org/2649703002/diff/220001/src/builtins/builtins-sharedarraybuffer.cc File src/builtins/builtins-sharedarraybuffer.cc (right): https://codereview.chromium.org/2649703002/diff/220001/src/builtins/builtins-sharedarraybuffer.cc#newcode364 src/builtins/builtins-sharedarraybuffer.cc:364: a.Return(a.CallRuntime(Runtime::kAtomicsCompareExchange, context, array, On 2017/03/10 21:05:39, Jakob Kummerow wrote: ...
3 years, 9 months ago (2017-03-10 21:09:54 UTC) #49
binji
One Q about ARM64, otherwise lgtm https://codereview.chromium.org/2649703002/diff/260001/src/compiler/arm64/code-generator-arm64.cc File src/compiler/arm64/code-generator-arm64.cc (right): https://codereview.chromium.org/2649703002/diff/260001/src/compiler/arm64/code-generator-arm64.cc#newcode1688 src/compiler/arm64/code-generator-arm64.cc:1688: ASSEMBLE_ATOMIC_COMPARE_EXCHANGE_INTEGER(ldaxrb, stlxrb); Is ...
3 years, 9 months ago (2017-03-10 23:08:03 UTC) #54
aseemgarg
https://codereview.chromium.org/2649703002/diff/260001/src/compiler/arm64/code-generator-arm64.cc File src/compiler/arm64/code-generator-arm64.cc (right): https://codereview.chromium.org/2649703002/diff/260001/src/compiler/arm64/code-generator-arm64.cc#newcode1688 src/compiler/arm64/code-generator-arm64.cc:1688: ASSEMBLE_ATOMIC_COMPARE_EXCHANGE_INTEGER(ldaxrb, stlxrb); On 2017/03/10 23:08:02, binji wrote: > Is ...
3 years, 9 months ago (2017-03-10 23:14:32 UTC) #55
aseemgarg
https://codereview.chromium.org/2649703002/diff/260001/src/compiler/arm64/code-generator-arm64.cc File src/compiler/arm64/code-generator-arm64.cc (right): https://codereview.chromium.org/2649703002/diff/260001/src/compiler/arm64/code-generator-arm64.cc#newcode1688 src/compiler/arm64/code-generator-arm64.cc:1688: ASSEMBLE_ATOMIC_COMPARE_EXCHANGE_INTEGER(ldaxrb, stlxrb); On 2017/03/10 23:14:32, aseemgarg wrote: > On ...
3 years, 9 months ago (2017-03-11 00:45:43 UTC) #56
aseemgarg
Please review. Also, we have runtime function for compareExchange (and exchange) for mips, ppc and ...
3 years, 9 months ago (2017-03-13 23:58:14 UTC) #59
Jarin
lgtm
3 years, 9 months ago (2017-03-14 09:37:27 UTC) #62
aseemgarg
https://codereview.chromium.org/2649703002/diff/320001/src/compiler/arm64/code-generator-arm64.cc File src/compiler/arm64/code-generator-arm64.cc (right): https://codereview.chromium.org/2649703002/diff/320001/src/compiler/arm64/code-generator-arm64.cc#newcode547 src/compiler/arm64/code-generator-arm64.cc:547: #define ASSEMBLE_ATOMIC_COMPARE_EXCHANGE_INTEGER(load_instr, store_instr) \ Landing this for now with ...
3 years, 9 months ago (2017-03-16 22:26:57 UTC) #71
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/2649703002/320001
3 years, 9 months ago (2017-03-16 22:27:16 UTC) #74
commit-bot: I haz the power
3 years, 9 months ago (2017-03-16 22:29:12 UTC) #77
Message was sent while issue was closed.
Committed patchset #17 (id:320001) as
https://chromium.googlesource.com/v8/v8/+/82b5c8c9440781976ce23cf8fcabd250ef2...

Powered by Google App Engine
This is Rietveld 408576698