< prev index next >

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

Print this page

        

*** 35,44 **** --- 35,45 ---- #include "gc/g1/heapRegion.inline.hpp" #include "gc/g1/heapRegionRemSet.hpp" #include "gc/g1/g1StringDedup.hpp" #include "logging/log.hpp" #include "logging/logStream.hpp" + #include "memory/iterator.inline.hpp" #include "memory/resourceArea.hpp" #include "oops/access.inline.hpp" #include "oops/compressedOops.inline.hpp" #include "oops/oop.inline.hpp" #include "runtime/handles.inline.hpp"
*** 59,69 **** _vo(vo), _failures(false) { } bool failures() { return _failures; } ! template <class T> void do_oop_nv(T* p) { T heap_oop = RawAccess<>::oop_load(p); if (!CompressedOops::is_null(heap_oop)) { oop obj = CompressedOops::decode_not_null(heap_oop); if (_g1h->is_obj_dead_cond(obj, _vo)) { Log(gc, verify) log; --- 60,70 ---- _vo(vo), _failures(false) { } bool failures() { return _failures; } ! template <class T> void do_oop_work(T* p) { T heap_oop = RawAccess<>::oop_load(p); if (!CompressedOops::is_null(heap_oop)) { oop obj = CompressedOops::decode_not_null(heap_oop); if (_g1h->is_obj_dead_cond(obj, _vo)) { Log(gc, verify) log;
*** 74,85 **** _failures = true; } } } ! void do_oop(oop* p) { do_oop_nv(p); } ! void do_oop(narrowOop* p) { do_oop_nv(p); } }; class G1VerifyCodeRootOopClosure: public OopClosure { G1CollectedHeap* _g1h; OopClosure* _root_cl; --- 75,86 ---- _failures = true; } } } ! void do_oop(oop* p) { do_oop_work(p); } ! void do_oop(narrowOop* p) { do_oop_work(p); } }; class G1VerifyCodeRootOopClosure: public OopClosure { G1CollectedHeap* _g1h; OopClosure* _root_cl;
< prev index next >