File tree 1 file changed +8
-4
lines changed
1 file changed +8
-4
lines changed Original file line number Diff line number Diff line change @@ -594,15 +594,19 @@ class G1ClearBitMapTask : public AbstractGangTask {
594
594
HeapWord* const end = r->end ();
595
595
596
596
while (cur < end) {
597
+ // Abort iteration if necessary.
598
+ if (_cm != NULL ) {
599
+ _cm->do_yield_check ();
600
+ if (_cm->has_aborted ()) {
601
+ return true ;
602
+ }
603
+ }
604
+
597
605
MemRegion mr (cur, MIN2 (cur + chunk_size_in_words, end));
598
606
_bitmap->clear_range (mr);
599
607
600
608
cur += chunk_size_in_words;
601
609
602
- // Abort iteration if after yielding the marking has been aborted.
603
- if (_cm != NULL && _cm->do_yield_check () && _cm->has_aborted ()) {
604
- return true ;
605
- }
606
610
// Repeat the asserts from before the start of the closure. We will do them
607
611
// as asserts here to minimize their overhead on the product. However, we
608
612
// will have them as guarantees at the beginning / end of the bitmap
You can’t perform that action at this time.
0 commit comments