--- old/src/hotspot/share/gc/g1/g1OopClosures.inline.hpp 2019-09-19 12:24:50.621053623 +0200 +++ new/src/hotspot/share/gc/g1/g1OopClosures.inline.hpp 2019-09-19 12:24:50.310043490 +0200 @@ -38,6 +38,7 @@ #include "oops/oopsHierarchy.hpp" #include "oops/oop.inline.hpp" #include "runtime/prefetch.inline.hpp" +#include "utilities/align.hpp" template inline void G1ScanClosureBase::prefetch_and_push(T* p, const oop obj) { @@ -115,7 +116,8 @@ G1CollectedHeap* g1h = G1CollectedHeap::heap(); // can't do because of races // assert(oopDesc::is_oop_or_null(obj), "expected an oop"); - g1h->check_oop_location(obj); + assert(is_object_aligned(obj), "oop must be aligned"); + assert(g1h->is_in_reserved(obj), "oop must be in reserved"); HeapRegion* from = g1h->heap_region_containing(p);