6861557: G1: assert(top() == bottom() || zfs == Allocated,"Region must be empty, or ...")
authorysr
Tue, 15 Sep 2009 16:50:50 -0700
changeset 3807 d8368e0b3783
parent 3700 cf9a1b408c4f
child 3808 de5e1b1e4f66
6861557: G1: assert(top() == bottom() || zfs == Allocated,"Region must be empty, or ...") Summary: Druing heap shrinking, check for emptiness of a region before modifying its ZF status. Reviewed-by: tonyp
hotspot/src/share/vm/gc_implementation/g1/heapRegionSeq.cpp
--- a/hotspot/src/share/vm/gc_implementation/g1/heapRegionSeq.cpp	Thu Sep 10 16:46:17 2009 -0700
+++ b/hotspot/src/share/vm/gc_implementation/g1/heapRegionSeq.cpp	Tue Sep 15 16:50:50 2009 -0700
@@ -302,9 +302,9 @@
     if (cur->isHumongous()) {
       return MemRegion(last_start, end);
     }
-    cur->reset_zero_fill();
     assert(cur == _regions.top(), "Should be top");
     if (!cur->is_empty()) break;
+    cur->reset_zero_fill();
     shrink_bytes -= cur->capacity();
     num_regions_deleted++;
     _regions.pop();