Closed
Description
jaotc crashed in Oracle JDK 9.0.4+11 and failed compilation in OpenJDK head.
Command:
jaotc --output C0.so --compile-commands commands.txt --verbose C0.class
Files:
https://drive.google.com/open?id=1p2qRGKtRkayhoWdZG6tYdNSEaZfDWx3F
Output with JDK 9.0.4+11
time ../../jdk-9.0.4/bin/jaotc --output C0.so --compile-commands commands.txt --verbose C0.class
Compiling C0...
1 classes found (25 ms)
Scanning C0
added main([Ljava/lang/String;)V
6 methods total, 1 methods to compile (4 ms)
Freeing memory [used: 2.1 MB , comm: 8.0 MB , freeRatio ~= 73.3%] (21 ms)
Compiling with 8 threads
.#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007fa81984615e, pid=11288, tid=11322
#
# JRE version: Java(TM) SE Runtime Environment (9.0+11) (build 9.0.4+11)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (9.0.4+11, mixed mode, aot, tiered, jvmci, compressed oops, g1 gc, linux-amd64)
# Problematic frame:
# J 2351 c2 org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V jdk.internal.vm.compiler@9.0.4 (153 bytes) @ 0x00007fa81984615e [0x00007fa819845760+0x00000000000009fe]
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport %p %s %c %d %P" (or dumping to /home/t/Projects/JVMTesting/bugs/jaotc-jdk-20180125165244/core.11288)
#
# An error report file with more information is saved as:
# /home/t/Projects/JVMTesting/bugs/jaotc-jdk-20180125165244/hs_err_pid11288.log
Could not load hsdis-amd64.so; library not loadable; PrintAssembly is disabled
#
# If you would like to submit a bug report, please visit:
# http://bugreport.java.com/bugreport/crash.jsp
#
Aborted (core dumped)
real 1m56.242s
user 2m8.084s
sys 0m0.460s
Output with OpenJDK head
time ../../openjdk/jdk/build/linux-x86_64-normal-server-release/jdk/bin/jaotc --output C0.so --compile-commands commands.txt --verbose C0.class
Compiling C0.so...
1 classes found (229 ms)
Scanning C0
added main([Ljava/lang/String;)V
6 methods total, 1 methods to compile (6 ms)
Freeing memory [used: 4.3 MB , comm: 17.0 MB, freeRatio ~= 74.7%] (24 ms)
Compiling with 8 threads
.Error: Failed compilation: C0.main([Ljava/lang/String;)V: java.lang.NullPointerException
java.lang.NullPointerException
at jdk.internal.vm.compiler/org.graalvm.compiler.graph.NodeClass$RawEdgesIterator.getInput(NodeClass.java:1042)
at jdk.internal.vm.compiler/org.graalvm.compiler.graph.NodeClass$RawEdgesIterator.forward(NodeClass.java:981)
at jdk.internal.vm.compiler/org.graalvm.compiler.graph.NodeClass$RawEdgesIterator.hasNext(NodeClass.java:974)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.scheduleEarliestIterative(SchedulePhase.java:743)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.run(SchedulePhase.java:167)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.schedule.SchedulePhase.run(SchedulePhase.java:126)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.Phase.run(Phase.java:47)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:195)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.Phase.apply(Phase.java:40)
at jdk.internal.vm.compiler/org.graalvm.compiler.virtual.phases.ea.EffectsPhase.runAnalysis(EffectsPhase.java:87)
at jdk.internal.vm.compiler/org.graalvm.compiler.virtual.phases.ea.PartialEscapePhase.run(PartialEscapePhase.java:80)
at jdk.internal.vm.compiler/org.graalvm.compiler.virtual.phases.ea.PartialEscapePhase.run(PartialEscapePhase.java:42)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:195)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:137)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.PhaseSuite.run(PhaseSuite.java:203)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:195)
at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:137)
at jdk.internal.vm.compiler/org.graalvm.compiler.core.GraalCompiler.emitFrontEnd(GraalCompiler.java:229)
at jdk.internal.vm.compiler/org.graalvm.compiler.core.GraalCompiler.compile(GraalCompiler.java:172)
at jdk.internal.vm.compiler/org.graalvm.compiler.core.GraalCompiler.compileGraph(GraalCompiler.java:158)
at jdk.aot/jdk.tools.jaotc.AOTBackend.compileGraph(AOTBackend.java:141)
at jdk.aot/jdk.tools.jaotc.AOTBackend.compileMethod(AOTBackend.java:103)
at jdk.aot/jdk.tools.jaotc.AOTCompilationTask.run(AOTCompilationTask.java:121)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1131)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:631)
at java.base/java.lang.Thread.run(Thread.java:844)
failed main([Ljava/lang/String;)V
0 methods compiled, 1 methods failed (103797 ms)
Freeing memory [used: 413.0 MB, comm: 1.8 GB , freeRatio ~= 77.4%] (17 ms)
Parsing compiled code (1 ms)
Freeing memory [used: 6.1 MB , comm: 17.0 MB, freeRatio ~= 64.2%] (22 ms)
Processing metadata (11 ms)
Freeing memory [used: 5.8 MB , comm: 17.0 MB, freeRatio ~= 66.1%] (15 ms)
Preparing stubs binary (0 ms)
Preparing compiled binary (0 ms)
.header: 57 bytes
.config: 40 bytes
.kls.offsets: 0 bytes
.meth.offsets: 0 bytes
.kls.dependencies: 0 bytes
.stubs.offsets: 964 bytes
.meth.metadata: 6792 bytes
.text: 21344 bytes
.code.segments: 165 bytes
.meth.constdata: 29152 bytes
.kls.got: 0 bytes
.cnt.got: 0 bytes
.meta.got: 0 bytes
.meth.state: 320 bytes
.oop.got: 0 bytes
.meta.names: 1874 bytes
Freeing memory [used: 5.8 MB , comm: 17.0 MB, freeRatio ~= 66.1%] (13 ms)
Creating binary: C0 (5 ms)
Freeing memory [used: 5.8 MB , comm: 17.0 MB, freeRatio ~= 66.1%] (15 ms)
Creating shared library: C0.so (3 ms)
Final memory [used: 5.6 MB , comm: 17.0 MB, freeRatio ~= 66.9%]
Total time: 104757 ms
real 1m44.977s
user 1m56.680s
sys 0m0.444s
Metadata
Metadata
Assignees
Labels
No labels