diff -r d9132bdf6c30 -r 9d62da00bf15 src/hotspot/share/gc/z/zHeapIterator.cpp --- a/src/hotspot/share/gc/z/zHeapIterator.cpp Mon Jun 25 12:44:52 2018 +0200 +++ b/src/hotspot/share/gc/z/zHeapIterator.cpp Sat May 26 06:59:49 2018 +0200 @@ -28,6 +28,7 @@ #include "gc/z/zHeapIterator.hpp" #include "gc/z/zOop.inline.hpp" #include "gc/z/zRootsIterator.hpp" +#include "memory/iterator.inline.hpp" #include "oops/oop.inline.hpp" #include "utilities/bitMap.inline.hpp" #include "utilities/stack.inline.hpp" @@ -73,7 +74,7 @@ } }; -class ZHeapIteratorPushOopClosure : public ExtendedOopClosure { +class ZHeapIteratorPushOopClosure : public BasicOopIterateClosure { private: ZHeapIterator* const _iter; const oop _base; @@ -83,23 +84,15 @@ _iter(iter), _base(base) {} - void do_oop_nv(oop* p) { + virtual void do_oop(oop* p) { const oop obj = HeapAccess::oop_load_at(_base, _base->field_offset(p)); _iter->push(obj); } - void do_oop_nv(narrowOop* p) { + virtual void do_oop(narrowOop* p) { ShouldNotReachHere(); } - virtual void do_oop(oop* p) { - do_oop_nv(p); - } - - virtual void do_oop(narrowOop* p) { - do_oop_nv(p); - } - #ifdef ASSERT virtual bool should_verify_oops() { return false;