Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8289748

C2 compiled code crashes with SIGFPE with -XX:+StressLCM and -XX:+StressGCM

    XMLWordPrintable

Details

    • b07

    Backports

      Description

        Note: Please change bug title to something more descriptive ones the problem is known.

        The attached Java Fuzzer test crashes with SIGFPE:

        // Maybe needs to be run several times if chosen seed is not working.
        $ java -XX:-TieredCompilation -XX:+StressLCM -XX:+StressGCM -Xcomp -XX:CompileOnly=Test Test.java

        #
        # A fatal error has been detected by the Java Runtime Environment:
        #
        # SIGFPE (0x8) at pc=0x00007fe778b8d916, pid=72086, tid=72087
        #
        # JRE version: Java(TM) SE Runtime Environment (20.0+4) (fastdebug build 20-ea+4-158)
        # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 20-ea+4-158, compiled mode, sharing, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
        # Problematic frame:
        # J 107 c2 Test.mainTest([Ljava/lang/String;)V (546 bytes) @ 0x00007fe778b8d916 [0x00007fe778b8d6e0+0x0000000000000236]
        ..........
        Command Line: -XX:-TieredCompilation -XX:+StressLCM -XX:+StressGCM -XX:+StressIGVN -XX:+StressCCP -Xcomp -XX:CompileOnly=Test --add-modules=ALL-DEFAULT jdk.compiler/com.sun.tools.javac.launcher.Main Test.java
        ..........
        Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
        J 107 c2 Test.mainTest([Ljava/lang/String;)V (546 bytes) @ 0x00007fe778b8d916 [0x00007fe778b8d6e0+0x0000000000000236]
        J 105 c2 Test.main([Ljava/lang/String;)V (45 bytes) @ 0x00007fe778b90e60 [0x00007fe778b90de0+0x0000000000000080]
        j java.lang.invoke.LambdaForm$DMH+0x0000000801030000.invokeStatic(Ljava/lang/Object;Ljava/lang/Object;)V+10 java.base@20-ea
        j java.lang.invoke.LambdaForm$MH+0x0000000801149800.invoke(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+33 java.base@20-ea
        j java.lang.invoke.Invokers$Holder.invokeExact_MT(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+20 java.base@20-ea
        j jdk.internal.reflect.DirectMethodHandleAccessor.invokeImpl(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+55 java.base@20-ea
        j jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+23 java.base@20-ea
        j java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+102 java.base@20-ea
        j com.sun.tools.javac.launcher.Main.execute(Ljava/lang/String;[Ljava/lang/String;Lcom/sun/tools/javac/launcher/Main$Context;)V+128 jdk.compiler@20-ea
        j com.sun.tools.javac.launcher.Main.run([Ljava/lang/String;[Ljava/lang/String;)V+54 jdk.compiler@20-ea
        j com.sun.tools.javac.launcher.Main.main([Ljava/lang/String;)V+17 jdk.compiler@20-ea
        v ~StubRoutines::call_stub 0x00007fe778b42d47
        V [libjvm.so+0x1015fe4] JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*)+0x514
        V [libjvm.so+0x1169515] jni_invoke_static(JNIEnv_*, JavaValue*, _jobject*, JNICallType, _jmethodID*, JNI_ArgumentPusher*, JavaThread*) [clone .constprop.1]+0x385
        V [libjvm.so+0x116ca25] jni_CallStaticVoidMethod+0x1b5
        C [libjli.so+0x47e5] JavaMain+0xd65
        C [libjli.so+0x7a19] ThreadJavaMain+0x9

        Attachments

          1. FuzzerUtils.java
            13 kB
          2. hs_err_pid72086.log
            152 kB
          3. Reproduce.java
            0.4 kB
          4. Test.java
            7 kB

          Issue Links

            Activity

              People

                tholenstein Tobias Holenstein
                chagedorn Christian Hagedorn
                Votes:
                0 Vote for this issue
                Watchers:
                8 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved: