< prev index next >
src/hotspot/share/gc/parallel/psParallelCompact.inline.hpp
8211447_01: revision due to comments from StefanJ and Thomas
RawAccess<IS_NOT_NULL>::oop_store(p, new_obj);
}
}
}
! class PSAdjustPointerClosure: public BasicOopIterateClosure {
! public:
! PSAdjustPointerClosure(ParCompactionManager* cm) {
assert(cm != NULL, "associate ParCompactionManage should not be NULL");
_cm = cm;
}
template <typename T> void do_oop_nv(T* p) { PSParallelCompact::adjust_pointer(p, _cm); }
virtual void do_oop(oop* p) { do_oop_nv(p); }
virtual void do_oop(narrowOop* p) { do_oop_nv(p); }
// This closure provides its own oop verification code.
debug_only(virtual bool should_verify_oops() { return false; })
virtual ReferenceIterationMode reference_iteration_mode() { return DO_FIELDS; }
! private:
ParCompactionManager* _cm;
};
#endif // SHARE_VM_GC_PARALLEL_PSPARALLELCOMPACT_INLINE_HPP
RawAccess<IS_NOT_NULL>::oop_store(p, new_obj);
}
}
}
! class PCAdjustPointerClosure: public BasicOopIterateClosure {
! public:
! PCAdjustPointerClosure(ParCompactionManager* cm) {
assert(cm != NULL, "associate ParCompactionManage should not be NULL");
_cm = cm;
}
template <typename T> void do_oop_nv(T* p) { PSParallelCompact::adjust_pointer(p, _cm); }
virtual void do_oop(oop* p) { do_oop_nv(p); }
virtual void do_oop(narrowOop* p) { do_oop_nv(p); }
// This closure provides its own oop verification code.
debug_only(virtual bool should_verify_oops() { return false; })
virtual ReferenceIterationMode reference_iteration_mode() { return DO_FIELDS; }
! private:
ParCompactionManager* _cm;
};
#endif // SHARE_VM_GC_PARALLEL_PSPARALLELCOMPACT_INLINE_HPP
< prev index next >