Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
|
Relates :
|
There are existing usages of Halt for optimizing unsafe accesses (e.g., GraphKit::must_be_not_null), but, as a future enhancement, it would be nice to provide more information about the root cause of the crash. As an example, JDK-8219902 [1] which involved Halt execution manifested as: # SIGILL (0x4) at pc=0x00007f55b4df37d6, pid=15865, tid=15869 # # JRE version: OpenJDK Runtime Environment (13.0+9) (build 13-ea+9) # Java VM: OpenJDK 64-Bit Server VM (13-ea+9, mixed mode, sharing, tiered, compressed oops, g1 gc, linux-amd64) # Problematic frame: # J 10152 c2 com.sun.tools.javac.tree.Pretty.visitLiteral(Lcom/sun/tools/javac/tree/JCTree$JCLiteral;)V jdk.compiler at 13-ea (282 bytes) @ 0x00007f55b4df37d6 [0x00007f55b4df07a0+0x0000000000003036] Without laborous analysis of generated code, it's impossible to say whether it's a JVM bug or a problem in user code. I believe JVM can do better in such situations and print meaningful error message instead when crashing. http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2019-June/034194.html
|