< prev index next >

src/share/vm/gc/parallel/psScavenge.cpp

Print this page

        

*** 93,103 **** assert(_promotion_manager != NULL, "Sanity"); } template <class T> void do_oop_work(T* p) { assert (!oopDesc::is_null(*p), "expected non-null ref"); ! assert ((oopDesc::load_decode_heap_oop_not_null(p))->is_oop(), "expected an oop while scanning weak refs"); // Weak refs may be visited more than once. if (PSScavenge::should_scavenge(p, _to_space)) { _promotion_manager->copy_and_push_safe_barrier<T, /*promote_immediately=*/false>(p); --- 93,103 ---- assert(_promotion_manager != NULL, "Sanity"); } template <class T> void do_oop_work(T* p) { assert (!oopDesc::is_null(*p), "expected non-null ref"); ! assert (oopDesc::is_oop(oopDesc::load_decode_heap_oop_not_null(p)), "expected an oop while scanning weak refs"); // Weak refs may be visited more than once. if (PSScavenge::should_scavenge(p, _to_space)) { _promotion_manager->copy_and_push_safe_barrier<T, /*promote_immediately=*/false>(p);
< prev index next >