hotspot/src/share/vm/gc/parallel/psScavenge.cpp
changeset 46968 9119841280f4
parent 46795 623a5e42deb6
child 47106 bed18a111b90
equal deleted inserted replaced
46953:39063b484ec2 46968:9119841280f4
    93     assert(_promotion_manager != NULL, "Sanity");
    93     assert(_promotion_manager != NULL, "Sanity");
    94   }
    94   }
    95 
    95 
    96   template <class T> void do_oop_work(T* p) {
    96   template <class T> void do_oop_work(T* p) {
    97     assert (!oopDesc::is_null(*p), "expected non-null ref");
    97     assert (!oopDesc::is_null(*p), "expected non-null ref");
    98     assert ((oopDesc::load_decode_heap_oop_not_null(p))->is_oop(),
    98     assert (oopDesc::is_oop(oopDesc::load_decode_heap_oop_not_null(p)),
    99             "expected an oop while scanning weak refs");
    99             "expected an oop while scanning weak refs");
   100 
   100 
   101     // Weak refs may be visited more than once.
   101     // Weak refs may be visited more than once.
   102     if (PSScavenge::should_scavenge(p, _to_space)) {
   102     if (PSScavenge::should_scavenge(p, _to_space)) {
   103       _promotion_manager->copy_and_push_safe_barrier<T, /*promote_immediately=*/false>(p);
   103       _promotion_manager->copy_and_push_safe_barrier<T, /*promote_immediately=*/false>(p);