Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8205293 | 11.0.1 | Stuart Monteith | P2 | Resolved | Fixed | team |
An assertion is tripping in BarrierSetAssembler::load_at, at src/hotspot/cpu/aarch64/gc/shared/barrierSetAssembler_aarch64.cpp:54
The load_at method does two checks:
bool on_heap = (decorators & IN_HEAP) != 0;
bool on_root = (decorators & IN_ROOT) != 0;
The following assertion is tripping as neither of them were set:
assert(on_root, "why else?");
This was because of a change in MacroAssembler::resolve_oop_handle:
3668 bs->load_at(this, IN_CONCURRENT_ROOT, T_OBJECT,
3669 result, Address(result, 0), tmp, rthread);
Before it was setting IN_ROOT | IN_CONCURRENT_ROOT. This change was introduced byJDK-8203353 .
The assertion trips during Interpreter generation.
The load_at method does two checks:
bool on_heap = (decorators & IN_HEAP) != 0;
bool on_root = (decorators & IN_ROOT) != 0;
The following assertion is tripping as neither of them were set:
assert(on_root, "why else?");
This was because of a change in MacroAssembler::resolve_oop_handle:
3668 bs->load_at(this, IN_CONCURRENT_ROOT, T_OBJECT,
3669 result, Address(result, 0), tmp, rthread);
Before it was setting IN_ROOT | IN_CONCURRENT_ROOT. This change was introduced by
The assertion trips during Interpreter generation.
- backported by
-
JDK-8205293 [AArch64] Assertion failure in BarrierSetAssembler::load_at
-
- Resolved
-
- relates to
-
JDK-8203353 Fixup inferred decorators in the interpreter
-
- Closed
-