-
Bug
-
Resolution: Unresolved
-
P3
-
None
-
8
-
generic
-
generic
ADDITIONAL SYSTEM INFORMATION :
# JRE version: OpenJDK Runtime Environment (8.0_412-b08) (build 1.8.0_412-b08)
# Java VM: OpenJDK 64-Bit Server VM (25.412-b08 mixed mode windows-amd64 compressed oops)
A DESCRIPTION OF THE PROBLEM :
A simple testcase sometimes crash with option "-XX:+UnlockDiagnosticVMOptions -XX:+StressGCM"
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
execute with -XX:+UnlockDiagnosticVMOptions -XX:+StressGCM.
Try 5-10 times will trigger crash.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
Execute success.
ACTUAL -
A fatal error has been detected by the Java Runtime Environment
---------- BEGIN SOURCE ----------
public class TestEliminatedCastPPAtPhi {
static TestEliminatedCastPPAtPhi saved;
static TestEliminatedCastPPAtPhi saved_not_null;
int f;
public static int CHECKSUM = 0;
public TestEliminatedCastPPAtPhi() {
}
public static void main(String[] var0) {
int[] var4 = new int[100];
TestEliminatedCastPPAtPhi var1 = new TestEliminatedCastPPAtPhi();
for(int var2 = 0; var2 < 20000; ++var2) {
boolean var5;
if (var2 % 2 == 0) {
Throwable[][] var3 = new Throwable[9][8];
var5 = true;
} else {
var5 = false;
}
test(var1, var4, var5);
}
test((TestEliminatedCastPPAtPhi)null, var4, true);
}
static int test(TestEliminatedCastPPAtPhi var0, int[] var1, boolean var2) {
int var10000 = var1[0];
int var3 = var1[20];
int var4 = var10000 + var3;
saved = var0;
if (var0 == null) {
return var4;
} else {
saved_not_null = var0;
int var5;
for(var5 = 0; var5 < 10; ++var5) {
}
int var6 = var1[var5];
var5 = var4 + var6;
TestEliminatedCastPPAtPhi var7;
if (var2) {
var7 = saved;
} else {
var7 = saved_not_null;
}
var6 = var7.f;
return var5 + var6;
}
}
}
---------- END SOURCE ----------
FREQUENCY : often
# JRE version: OpenJDK Runtime Environment (8.0_412-b08) (build 1.8.0_412-b08)
# Java VM: OpenJDK 64-Bit Server VM (25.412-b08 mixed mode windows-amd64 compressed oops)
A DESCRIPTION OF THE PROBLEM :
A simple testcase sometimes crash with option "-XX:+UnlockDiagnosticVMOptions -XX:+StressGCM"
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
execute with -XX:+UnlockDiagnosticVMOptions -XX:+StressGCM.
Try 5-10 times will trigger crash.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
Execute success.
ACTUAL -
A fatal error has been detected by the Java Runtime Environment
---------- BEGIN SOURCE ----------
public class TestEliminatedCastPPAtPhi {
static TestEliminatedCastPPAtPhi saved;
static TestEliminatedCastPPAtPhi saved_not_null;
int f;
public static int CHECKSUM = 0;
public TestEliminatedCastPPAtPhi() {
}
public static void main(String[] var0) {
int[] var4 = new int[100];
TestEliminatedCastPPAtPhi var1 = new TestEliminatedCastPPAtPhi();
for(int var2 = 0; var2 < 20000; ++var2) {
boolean var5;
if (var2 % 2 == 0) {
Throwable[][] var3 = new Throwable[9][8];
var5 = true;
} else {
var5 = false;
}
test(var1, var4, var5);
}
test((TestEliminatedCastPPAtPhi)null, var4, true);
}
static int test(TestEliminatedCastPPAtPhi var0, int[] var1, boolean var2) {
int var10000 = var1[0];
int var3 = var1[20];
int var4 = var10000 + var3;
saved = var0;
if (var0 == null) {
return var4;
} else {
saved_not_null = var0;
int var5;
for(var5 = 0; var5 < 10; ++var5) {
}
int var6 = var1[var5];
var5 = var4 + var6;
TestEliminatedCastPPAtPhi var7;
if (var2) {
var7 = saved;
} else {
var7 = saved_not_null;
}
var6 = var7.f;
return var5 + var6;
}
}
}
---------- END SOURCE ----------
FREQUENCY : often
- relates to
-
JDK-8139771 Eliminating CastPP nodes at Phis when they all come from a unique input may cause crash
-
- Closed
-