Details
-
Sub-task
-
Resolution: Fixed
-
P3
-
19
Description
# SIGFPE (0x8) at pc=0x00007fd2a0849b1a, pid=90495, tid=90496
# J 106 c2 Test.mainTest([Ljava/lang/String;)V (853 bytes) @ 0x00007fd2a0849b1a [0x00007fd2a0848ca0+0x0000000000000e7a]
Crashes at:
0x00007fd2a0849b1a: idivl 0x7c(%rsp) ;*invokevirtual append {reexecute=0 rethrow=0 return_oop=0}
; - Test::mainTest@409 (line 154)
HOW TO REPRODUCE IT:
Generate bytecode targeting JVM 8 and run it on JVM 19 (b20 or later version, debug or release) as follows:
$ javac --source 8 --target 8 Test.java FuzzerUtils.java
$ java Test
(...)
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGFPE (0x8) at pc=0x00007fa848af7a19, pid=89901, tid=89902
#
# JRE version: OpenJDK Runtime Environment (19.0) (fastdebug build 19-internal-adhoc.rocastan.open)
# Java VM: OpenJDK 64-Bit Server VM (fastdebug 19-internal-adhoc.rocastan.open, mixed mode, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# J 294 c2 Test.mainTest([Ljava/lang/String;)V (853 bytes) @ 0x00007fa848af7a19 [0x00007fa848af7360+0x00000000000006b9]
ORIGINAL INSTRUCTIONS:
To reproduce:
$ java -XX:-BackgroundCompilation Test
For some reason, the crash doesn't seem to reproduce it I rebuild the class files from the java files. The class files were produced from the java files initially though. The out attached file contains the entire output, disassembly included.
# J 106 c2 Test.mainTest([Ljava/lang/String;)V (853 bytes) @ 0x00007fd2a0849b1a [0x00007fd2a0848ca0+0x0000000000000e7a]
Crashes at:
0x00007fd2a0849b1a: idivl 0x7c(%rsp) ;*invokevirtual append {reexecute=0 rethrow=0 return_oop=0}
; - Test::mainTest@409 (line 154)
HOW TO REPRODUCE IT:
Generate bytecode targeting JVM 8 and run it on JVM 19 (b20 or later version, debug or release) as follows:
$ javac --source 8 --target 8 Test.java FuzzerUtils.java
$ java Test
(...)
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGFPE (0x8) at pc=0x00007fa848af7a19, pid=89901, tid=89902
#
# JRE version: OpenJDK Runtime Environment (19.0) (fastdebug build 19-internal-adhoc.rocastan.open)
# Java VM: OpenJDK 64-Bit Server VM (fastdebug 19-internal-adhoc.rocastan.open, mixed mode, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# J 294 c2 Test.mainTest([Ljava/lang/String;)V (853 bytes) @ 0x00007fa848af7a19 [0x00007fa848af7360+0x00000000000006b9]
ORIGINAL INSTRUCTIONS:
To reproduce:
$ java -XX:-BackgroundCompilation Test
For some reason, the crash doesn't seem to reproduce it I rebuild the class files from the java files. The class files were produced from the java files initially though. The out attached file contains the entire output, disassembly included.
Attachments
Issue Links
- relates to
-
JDK-8287035 [BACKOUT] PPC64: Handle integral division overflow during parsing
- Resolved
-
JDK-8257822 C2 crashes with SIGFPE due to a division that floats above its zero check
- Resolved
-
JDK-8288941 C2: assert(false) failed: Bad graph detected in build_loop_late
- Closed
-
JDK-8284742 x86: Handle integral division overflow during parsing
- Closed
-
JDK-8299857 C2: Allow speculative Div/Mod on RISC architectures
- Open
(3 links to)