Relates :
|
|
Relates :
|
|
Relates :
|
Attached Test.java ----------------- public class Test { public static void main(String[] args) { Test issue = new Test(); for (int i = 0; i < 10000; i++) { issue.test(new int[999]); } } public void test (int[] iaarg) { int[] iarr = new int[777]; for (int i = 4; i > 0; i--) { for (int j = 0; j <= i - 1; j++) { int istep = 2 * j - i + 1; int iadj = 0; if (istep < 0) { iadj = iarr[0-istep] + iaarg[i-1]; } else { iadj = iarr[istep] + iaarg[i-1]; } } } } } ----------------- $ javac Test.java $ java -XX:CompileOnly=Test.test Test # A fatal error has been detected by the Java Runtime Environment: # # Internal Error (/home/rvraghav/data/build/jdk-jdk/open/src/hotspot/share/opto/loopTransform.cpp:567), pid=5452, tid=5464 # assert(cl->trip_count() > 0) failed: peeling a fully unrolled loop # # JRE version: Java(TM) SE Runtime Environment (12.0) (slowdebug build 12-internal+0-2018-12-07-1555497.rvraghav.null) # Java VM: Java HotSpot(TM) 64-Bit Server VM (slowdebug 12-internal+0-2018-12-07-1555497.rvraghav.null, mixed mode, tiered, compressed oops, g1 gc, linux-amd64) # Problematic frame: # V [libjvm.so+0xe1561c] PhaseIdealLoop::do_peeling(IdealLoopTree*, Node_List&)+0xce # <attached hs_err_pid5452.log> Found this case when working for JDK-8211698. (not sure if same root cause / duplicate of JDK-8211698) Also can be related to JDK-8193130. Failures present with current latest JDK 12 sources build. (unlike 8211698 case, here reverting just 8193130 fix is NOT solving the failure) Found minor changes in above test case can cause different type failures for different versions - .e.g. failures: - (Original issue handled by JDK-8193130) - assert(false) failed: Bad graph detected in build_loop_late - SIGILL failure (as in JDK-8211698) (some failures reproducible even with JDK10b46)
|