< prev index next >

src/share/vm/gc_implementation/shenandoah/shenandoahVerifier.cpp

Print this page
rev 11462 : Backport per-region seqnum tracking
rev 11463 : Backport Traversal GC

@@ -860,10 +860,34 @@
           _verify_regions_nocset,      // no cset regions, trash regions have appeared
           _verify_gcstate_stable       // update refs had cleaned up forwarded objects
   );
 }
 
+void ShenandoahVerifier::verify_before_traversal() {
+  verify_at_safepoint(
+          "Before Traversal",
+          _verify_forwarded_none,      // cannot have forwarded objects
+          _verify_marked_disable,      // bitmaps are not relevant before traversal
+          _verify_cset_none,           // no cset references before traversal
+          _verify_liveness_disable,    // no reliable liveness data anymore
+          _verify_regions_notrash_nocset, // no trash and no cset regions
+          _verify_gcstate_stable       // nothing forwarded before traversal
+  );
+}
+
+void ShenandoahVerifier::verify_after_traversal() {
+  verify_at_safepoint(
+          "After Traversal",
+          _verify_forwarded_none,      // cannot have forwarded objects
+          _verify_marked_complete,     // should have complete marking after traversal
+          _verify_cset_none,           // no cset references left after traversal
+          _verify_liveness_disable,    // liveness data is not collected for new allocations
+          _verify_regions_nocset,      // no cset regions, trash regions allowed
+          _verify_gcstate_stable       // nothing forwarded after traversal
+  );
+}
+
 void ShenandoahVerifier::verify_before_fullgc() {
   verify_at_safepoint(
           "Before Full GC",
           _verify_forwarded_allow,     // can have forwarded objects
           _verify_marked_disable,      // do not verify marked: lots ot time wasted checking dead allocations
< prev index next >