--- old/src/hotspot/share/gc/z/zCollectedHeap.cpp 2019-09-17 15:01:30.573081583 +0200 +++ new/src/hotspot/share/gc/z/zCollectedHeap.cpp 2019-09-17 15:01:30.317073204 +0200 @@ -365,14 +365,12 @@ _heap.verify(); } -bool ZCollectedHeap::is_oop(oop object) const { - return CollectedHeap::is_oop(object) && _heap.is_oop(object); +bool ZCollectedHeap::is_oop_location(void* addr) const { + return is_object_aligned(addr) && + (uintptr_t)addr >= ZAddressSpaceStart && + (uintptr_t)addr < ZAddressSpaceEnd; } -void ZCollectedHeap::check_oop_location(void* addr) const { - assert(is_object_aligned(addr), "address is not aligned"); - - const uintptr_t addr_int = reinterpret_cast(addr); - assert(addr_int >= ZAddressSpaceStart, "address is outside of the heap"); - assert(addr_int < ZAddressSpaceEnd, "address is outside of the heap"); +bool ZCollectedHeap::is_oop(oop object) const { + return CollectedHeap::is_oop(object) && _heap.is_oop(object); }