Skip to content

Commit 317dacc

Browse files
committed
8364159: Shenandoah assertions after JDK-8361712
Reviewed-by: mbaesken, shade
1 parent a6fb87d commit 317dacc

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

src/hotspot/share/gc/shenandoah/shenandoahAsserts.cpp

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -567,11 +567,15 @@ bool ShenandoahAsserts::extract_klass_safely(oop obj, narrowKlass& nk, const Kla
567567
}
568568
if (UseCompressedClassPointers) {
569569
if (UseCompactObjectHeaders) { // look in forwardee
570-
oop fwd = ShenandoahForwarding::get_forwardee_raw_unchecked(obj);
571-
if (!os::is_readable_pointer(fwd)) {
572-
return false;
570+
markWord mark = obj->mark();
571+
if (mark.is_marked()) {
572+
oop fwd = cast_to_oop(mark.clear_lock_bits().to_pointer());
573+
if (!os::is_readable_pointer(fwd)) {
574+
return false;
575+
}
576+
mark = fwd->mark();
573577
}
574-
nk = fwd->mark().narrow_klass();
578+
nk = mark.narrow_klass();
575579
} else {
576580
nk = obj->narrow_klass();
577581
}

0 commit comments

Comments
 (0)