-
Bug
-
Resolution: Fixed
-
P4
-
10, 11, 17, 18, 19, 20
-
b17
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8297506 | 19.0.2 | Tobias Hartmann | P4 | Resolved | Fixed | b07 |
JDK-8296281 | 17.0.7-oracle | Tobias Hartmann | P4 | Resolved | Fixed | b01 |
JDK-8299465 | 17.0.7 | Goetz Lindenmaier | P4 | Resolved | Fixed | b01 |
JDK-8296359 | 11.0.19-oracle | Tobias Hartmann | P4 | Resolved | Fixed | b01 |
JDK-8299819 | 11.0.19 | Goetz Lindenmaier | P4 | Resolved | Fixed | b01 |
Arch: x86_64
OS: Ubuntu 20.04
java:
- openjdk version "11.0.17-internal" 2022-10-18
- OpenJDK Runtime Environment (fastdebug build 11.0.17-internal+0-adhoc.congli.jdk11u-dev)
- OpenJDK 64-Bit Server VM (fastdebug build 11.0.17-internal+0-adhoc.congli.jdk11u-dev, mixed mode)
javac: javac 11.0.17-internal
A DESCRIPTION OF THE PROBLEM :
This is a JIT compiler bug which triggers an assertion failure in the C2 compiler:
# Internal Error (/zdata/congli/hotspot-build-env/jdk11u-dev/src/hotspot/share/opto/loopnode.cpp:1606), pid=2489456, tid=2489469
# assert(false) failed: should be able to adjust outer loop
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
1. javac T.java
2. java -Xmx1G -XX:-BackgroundCompilation -XX:-PrintWarnings --illegal-access=deny T
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
NO crash
ACTUAL -
Crashed
---------- BEGIN SOURCE ----------
class T {
long b;
void a(double d) {
int e;
int w = 43542;
int o = 11;
e = w;
for (int i = 524; i < 19325; i += 1) {
for (int j = 0; j < 32767; j++) o++;
for (int k = 0; k < o; k++) e += 7;
}
}
void p(long l, float f, long l1) {
double z = 83.31189;
for (; ; ) a(z);
}
void f() {
p(b, 93.934F, b);
}
public static void main(String[] q) {
T t = new T();
t.f();
}
}
---------- END SOURCE ----------
FREQUENCY : always
- backported by
-
JDK-8296281 C2: fix and simplify IdealLoopTree::do_remove_empty_loop
- Resolved
-
JDK-8296359 C2: fix and simplify IdealLoopTree::do_remove_empty_loop
- Resolved
-
JDK-8297506 C2: fix and simplify IdealLoopTree::do_remove_empty_loop
- Resolved
-
JDK-8299465 C2: fix and simplify IdealLoopTree::do_remove_empty_loop
- Resolved
-
JDK-8299819 C2: fix and simplify IdealLoopTree::do_remove_empty_loop
- Resolved
- duplicates
-
JDK-8294413 Assertion failure: OuterStripMinedLoop should have been removed
- Closed
- relates to
-
JDK-8186027 C2: loop strip mining
- Resolved
- links to
-
Commit openjdk/jdk11u-dev/369dedba
-
Commit openjdk/jdk17u-dev/43668f9c
-
Commit openjdk/jdk19u/62db7bb5
-
Commit openjdk/jdk/dd51f7e0
-
Review openjdk/jdk11u-dev/1628
-
Review openjdk/jdk17u-dev/998
-
Review openjdk/jdk19u/86
-
Review openjdk/jdk/10393