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

Issue 2857713002: [heap] Make non-atomic markbit operations consistent with atomic ones. (Closed)

Created:
3 years, 7 months ago by ulan
Modified:
3 years, 7 months ago
CC:
v8-reviews_googlegroups.com, Hannes Payer (out of office)
Target Ref:
refs/heads/master
Project:
v8
Visibility:
Public.

Description

[heap] Make non-atomic markbit operations consistent with atomic ones. Now non-atomic color transition operations return a boolean indicating whether the transition succeeded or not. This allows to replace color check and transition operations with a single transition operation. For example: if (IsWhite(object)) { WhiteToBlack(object); Foo(); } becomes if (WhiteToBlack(object)) { Foo(); } BUG=chromium:694255 Review-Url: https://codereview.chromium.org/2857713002 Cr-Commit-Position: refs/heads/master@{#45085} Committed: https://chromium.googlesource.com/v8/v8/+/dd37366fb56a57be5ef36ed0c2b3c7893cd6c6d8

Patch Set 1 #

Total comments: 1

Patch Set 2 : remove MarkBlack #

Patch Set 3 : remove dcheck #

Total comments: 10

Patch Set 4 : comment #

Patch Set 5 : more comments #

Patch Set 6 : make comment on class #

Patch Set 7 : fix TransferMark #

Patch Set 8 : more fixes to TranserMark #

Patch Set 9 : rebase #

Patch Set 10 : debug #

Patch Set 11 : fix overlap check #

Unified diffs Side-by-side diffs Delta from patch set Stats (+115 lines, -140 lines) Patch
M src/heap/heap.cc View 1 2 3 4 5 6 7 8 3 chunks +3 lines, -3 lines 0 comments Download
M src/heap/incremental-marking.h View 1 2 3 4 5 6 7 8 3 chunks +11 lines, -6 lines 0 comments Download
M src/heap/incremental-marking.cc View 1 2 3 4 5 6 7 8 9 10 11 chunks +44 lines, -43 lines 0 comments Download
M src/heap/mark-compact.h View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -9 lines 0 comments Download
M src/heap/mark-compact.cc View 9 chunks +40 lines, -59 lines 0 comments Download
M src/heap/mark-compact-inl.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -6 lines 0 comments Download
M src/heap/marking.h View 1 2 3 4 5 4 chunks +13 lines, -14 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 33 (15 generated)
ulan
ptal https://codereview.chromium.org/2857713002/diff/1/src/heap/heap.cc File src/heap/heap.cc (left): https://codereview.chromium.org/2857713002/diff/1/src/heap/heap.cc#oldcode4290 src/heap/heap.cc:4290: incremental_marking()->MarkGrey(object); MarkGrey is defined as WhiteToGreyAndPush. The latter ...
3 years, 7 months ago (2017-05-02 18:20:31 UTC) #2
Michael Lippautz
lgtm https://codereview.chromium.org/2857713002/diff/40001/src/heap/incremental-marking.h File src/heap/incremental-marking.h (right): https://codereview.chromium.org/2857713002/diff/40001/src/heap/incremental-marking.h#newcode195 src/heap/incremental-marking.h:195: bool WhiteToGreyAndPush(HeapObject* obj); nit: Please add a comment ...
3 years, 7 months ago (2017-05-03 07:48:39 UTC) #3
Hannes Payer (out of office)
https://codereview.chromium.org/2857713002/diff/40001/src/heap/incremental-marking.cc File src/heap/incremental-marking.cc (right): https://codereview.chromium.org/2857713002/diff/40001/src/heap/incremental-marking.cc#newcode878 src/heap/incremental-marking.cc:878: USE(ignored); Do you want to DCHECK ignored? https://codereview.chromium.org/2857713002/diff/40001/src/heap/marking.h File ...
3 years, 7 months ago (2017-05-03 08:29:05 UTC) #4
ulan
https://codereview.chromium.org/2857713002/diff/40001/src/heap/incremental-marking.h File src/heap/incremental-marking.h (right): https://codereview.chromium.org/2857713002/diff/40001/src/heap/incremental-marking.h#newcode195 src/heap/incremental-marking.h:195: bool WhiteToGreyAndPush(HeapObject* obj); On 2017/05/03 07:48:39, Michael Lippautz wrote: ...
3 years, 7 months ago (2017-05-03 08:51:56 UTC) #5
Hannes Payer (out of office)
lgtm
3 years, 7 months ago (2017-05-03 10:00:47 UTC) #6
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/2857713002/100001
3 years, 7 months ago (2017-05-03 12:04:17 UTC) #9
commit-bot: I haz the power
Try jobs failed on following builders: v8_linux_dbg_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_dbg_ng/builds/25374) v8_linux_dbg_ng_triggered on master.tryserver.v8 (JOB_FAILED, ...
3 years, 7 months ago (2017-05-03 12:29:47 UTC) #11
ulan
Hannes, Michael: I added special handling for overlapping markbits in IncrementalMarking::TransferMark.
3 years, 7 months ago (2017-05-03 19:40:10 UTC) #12
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/2857713002/140001
3 years, 7 months ago (2017-05-03 19:41:14 UTC) #15
commit-bot: I haz the power
Try jobs failed on following builders: v8_android_arm_compile_rel on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_android_arm_compile_rel/builds/36932) v8_linux64_asan_rel_ng on master.tryserver.v8 (JOB_FAILED, ...
3 years, 7 months ago (2017-05-03 19:43:04 UTC) #17
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/2857713002/160001
3 years, 7 months ago (2017-05-03 19:58:14 UTC) #20
commit-bot: I haz the power
Try jobs failed on following builders: v8_linux_verify_csa_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_verify_csa_rel_ng/builds/5278) v8_linux_verify_csa_rel_ng_triggered on master.tryserver.v8 (JOB_FAILED, ...
3 years, 7 months ago (2017-05-03 20:29:48 UTC) #22
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/2857713002/200001
3 years, 7 months ago (2017-05-04 11:15:12 UTC) #25
commit-bot: I haz the power
Committed patchset #11 (id:200001) as https://chromium.googlesource.com/v8/v8/+/dd37366fb56a57be5ef36ed0c2b3c7893cd6c6d8
3 years, 7 months ago (2017-05-04 11:44:23 UTC) #28
Michael Achenbach
Looks like this blocks the roll: https://codereview.chromium.org/2857423002/
3 years, 7 months ago (2017-05-04 20:49:59 UTC) #30
Michael Achenbach
A revert of this CL (patchset #11 id:200001) has been created in https://codereview.chromium.org/2859093004/ by machenbach@chromium.org. ...
3 years, 7 months ago (2017-05-05 06:37:08 UTC) #31
Michael Achenbach
Please add to CL description on reland: CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_rel_ng
3 years, 7 months ago (2017-05-05 08:23:05 UTC) #32
ulan
3 years, 7 months ago (2017-05-05 08:33:11 UTC) #33
Message was sent while issue was closed.
On 2017/05/05 08:23:05, Michael Achenbach wrote:
> Please add to CL description on reland:
> 
> CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_rel_ng

Thank you for looking into it, Michael!

Powered by Google App Engine
This is Rietveld 408576698