< prev index next >

src/share/vm/gc_implementation/parNew/parNewGeneration.cpp

Print this page

        

@@ -1124,18 +1124,10 @@
     forward_ptr = obj->forwardee();
   }
   return forward_ptr;
 }
 
-#ifdef ASSERT
-bool ParNewGeneration::is_legal_forward_ptr(oop p) {
-  return
-    (p == ClaimedForwardPtr)
-    || Universe::heap()->is_in_reserved(p);
-}
-#endif
-
 void ParNewGeneration::preserve_mark_if_necessary(oop obj, markOop m) {
   if (m->must_be_preserved_for_promotion_failure(obj)) {
     // We should really have separate per-worker stacks, rather
     // than use locking of a common pair of stacks.
     MutexLocker ml(ParGCRareEvent_lock);

@@ -1206,10 +1198,11 @@
     old->forward_to(new_obj);
     forward_ptr = NULL;
   } else {
     // Is in to-space; do copying ourselves.
     Copy::aligned_disjoint_words((HeapWord*)old, (HeapWord*)new_obj, sz);
+    assert(Universe::heap()->is_in_reserved(new_obj), "illegal forwarding pointer value.");
     forward_ptr = old->forward_to_atomic(new_obj);
     // Restore the mark word copied above.
     new_obj->set_mark(m);
     // Increment age if obj still in new generation
     new_obj->incr_age();
< prev index next >