< prev index next >

src/hotspot/share/gc/g1/g1ConcurrentMark.cpp

Print this page

        

*** 51,60 **** --- 51,61 ---- #include "gc/shared/vmGCOperations.hpp" #include "gc/shared/weakProcessor.hpp" #include "logging/log.hpp" #include "memory/allocation.hpp" #include "memory/resourceArea.hpp" + #include "oops/access.inline.hpp" #include "oops/oop.inline.hpp" #include "runtime/atomic.hpp" #include "runtime/handles.inline.hpp" #include "runtime/java.hpp" #include "runtime/prefetch.inline.hpp"
*** 1366,1376 **** virtual void do_oop(narrowOop* p) { do_oop_work(p); } virtual void do_oop( oop* p) { do_oop_work(p); } template <class T> void do_oop_work(T* p) { if (!_cm->has_overflown()) { ! oop obj = oopDesc::load_decode_heap_oop(p); _task->deal_with_reference(obj); _ref_counter--; if (_ref_counter == 0) { // We have dealt with _ref_counter_limit references, pushing them --- 1367,1377 ---- virtual void do_oop(narrowOop* p) { do_oop_work(p); } virtual void do_oop( oop* p) { do_oop_work(p); } template <class T> void do_oop_work(T* p) { if (!_cm->has_overflown()) { ! oop obj = RawAccess<>::oop_load(p); _task->deal_with_reference(obj); _ref_counter--; if (_ref_counter == 0) { // We have dealt with _ref_counter_limit references, pushing them
< prev index next >