mirror of
https://github.com/openjdk/jdk.git
synced 2026-02-19 14:55:17 +00:00
8345293: Fix generational Shenandoah with compact headers
Reviewed-by: shade, stuefe, ysr
This commit is contained in:
parent
e1910f2d19
commit
e9f6ba0526
@ -332,6 +332,11 @@ void ShenandoahHeap::increase_object_age(oop obj, uint additional_age) {
|
||||
uint ShenandoahHeap::get_object_age(oop obj) {
|
||||
markWord w = obj->mark();
|
||||
assert(!w.is_marked(), "must not be forwarded");
|
||||
if (UseObjectMonitorTable) {
|
||||
assert(LockingMode == LM_LIGHTWEIGHT, "Must use LW locking, too");
|
||||
assert(w.age() <= markWord::max_age, "Impossible!");
|
||||
return w.age();
|
||||
}
|
||||
if (w.has_monitor()) {
|
||||
w = w.monitor()->header();
|
||||
} else if (w.is_being_inflated() || w.has_displaced_mark_helper()) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user