-
Type:
Bug
-
Resolution: Fixed
-
Priority:
P3
-
Affects Version/s: 11, 17, 20
-
Component/s: hotspot
-
b18
-
ppc
| Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
|---|---|---|---|---|---|---|
| JDK-8295733 | 17.0.6 | Martin Doerr | P3 | Resolved | Fixed | b01 |
| JDK-8294846 | 11.0.18 | Martin Doerr | P3 | Resolved | Fixed | b01 |
# Internal Error (/src/hotspot/share/opto/output.cpp:941)
# assert(t->base() == Type::Int || t->base() == Type::Half || t->base() == Type::FloatCon || t->base() == Type::FloatBot) failed: Unexpected type: inst:
Debugging shows that the C2's decodeN_mergeDisjointNode misses a set_oop call which causes the issue.
The usage in decodeN_Disjoint_isel_Ex is not problematic because it is only inserted in the middle of a postalloc_expand sequence. But, the usage in decodeN_Disjoint_notNull_Ex should get fixed because it produces an oop at the end of the postalloc_expand sequence.
- backported by
-
JDK-8294846 [PPC64] C2: Missing is_oop information when using disjoint compressed oops mode
-
- Resolved
-
-
JDK-8295733 [PPC64] C2: Missing is_oop information when using disjoint compressed oops mode
-
- Resolved
-
- relates to
-
JDK-8293844 C2: Verify Location::{oop,normal} types in PhaseOutput::FillLocArray
-
- Resolved
-
- links to
-
Commit
openjdk/jdk11u-dev/f8e71f81
-
Commit
openjdk/jdk17u-dev/feb6b3cf
-
Commit
openjdk/jdk/f03934e2
-
Review
openjdk/jdk11u-dev/1389
-
Review
openjdk/jdk17u-dev/769
-
Review
openjdk/jdk/10484