diff -r 44dc3d796110 -r 3aba4a42d8ad src/hotspot/share/gc/z/zHeapIterator.cpp --- a/src/hotspot/share/gc/z/zHeapIterator.cpp Mon Oct 28 11:21:23 2019 +0100 +++ b/src/hotspot/share/gc/z/zHeapIterator.cpp Mon Oct 28 11:23:28 2019 +0100 @@ -24,6 +24,7 @@ #include "precompiled.hpp" #include "classfile/classLoaderData.hpp" #include "classfile/classLoaderDataGraph.hpp" +#include "gc/z/zAddress.inline.hpp" #include "gc/z/zBarrier.inline.hpp" #include "gc/z/zGlobals.hpp" #include "gc/z/zGranuleMap.inline.hpp" @@ -148,11 +149,11 @@ } ZHeapIteratorBitMap* ZHeapIterator::object_map(oop obj) { - const uintptr_t addr = ZOop::to_address(obj); - ZHeapIteratorBitMap* map = _visit_map.get(addr); + const uintptr_t offset = ZAddress::offset(ZOop::to_address(obj)); + ZHeapIteratorBitMap* map = _visit_map.get(offset); if (map == NULL) { map = new ZHeapIteratorBitMap(object_index_max()); - _visit_map.put(addr, map); + _visit_map.put(offset, map); } return map;