Graal: [compiler] NPE in SchedulePhase on graalvm-ee-linux-amd64-19.2.0.1

Created on 14 Sep 2019  Â·  5Comments  Â·  Source: oracle/graal

Repro

"${GRAALVM_HOME}"/bin/R -e 'install.packages(c("ggplot2", "dplyr"))'

Output

...
* installing *source* package ‘ggplot2’ ...
** package ‘ggplot2’ successfully unpacked and MD5 sums checked
** R
** data
*** moving datasets to lazyload DB
** inst
** byte-compile and prepare package for lazy loading
[Use -Dgraal.LogFile=<path> to redirect Graal log output to a file.]
[truffle] opt fail         envhook <split-3af82b74>                                    |Reason java.lang.NullPointerException
java.lang.NullPointerException
        at org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.checkKillsBetween(SchedulePhase.java:332)
        at org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.calcLatestBlock(SchedulePhase.java:577)
        at com.oracle.graal.enterprise.t.a$a.calcLatestBlock(stripped:526)
        at org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.calcLatestBlocks(SchedulePhase.java:272)
        at org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.run(SchedulePhase.java:205)
        at com.oracle.graal.enterprise.t.a.run(stripped:105)
        at org.graalvm.compiler.phases.Phase.run(Phase.java:49)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:197)
        at org.graalvm.compiler.phases.Phase.apply(Phase.java:42)
        at org.graalvm.compiler.phases.Phase.apply(Phase.java:38)
        at org.graalvm.compiler.phases.common.FixReadsPhase.run(FixReadsPhase.java:605)
        at org.graalvm.compiler.phases.common.FixReadsPhase.run(FixReadsPhase.java:91)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:197)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:139)
        at org.graalvm.compiler.phases.PhaseSuite.run(PhaseSuite.java:209)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:197)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:139)
        at org.graalvm.compiler.core.GraalCompiler.emitFrontEnd(GraalCompiler.java:230)
        at org.graalvm.compiler.core.GraalCompiler.compile(GraalCompiler.java:144)
        at org.graalvm.compiler.core.GraalCompiler.compileGraph(GraalCompiler.java:129)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl.compilePEGraph(TruffleCompilerImpl.java:521)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl.compileAST(TruffleCompilerImpl.java:455)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl$TruffleCompilationWrapper.performCompilation(TruffleCompilerImpl.java:637)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl$TruffleCompilationWrapper.performCompilation(TruffleCompilerImpl.java:579)
        at org.graalvm.compiler.core.CompilationWrapper.run(CompilationWrapper.java:178)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl.doCompile(TruffleCompilerImpl.java:280)
        at org.graalvm.compiler.truffle.compiler.hotspot.libgraal.HotSpotToSVMEntryPoints.doCompile(HotSpotToSVMEntryPoints.java:253)

** help
[truffle] opt fail         envhook <split-6de606e0>                                    |Reason java.lang.NullPointerException
java.lang.NullPointerException
        at org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.checkKillsBetween(SchedulePhase.java:332)
        at org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.calcLatestBlock(SchedulePhase.java:577)
        at com.oracle.graal.enterprise.t.a$a.calcLatestBlock(stripped:526)
        at org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.calcLatestBlocks(SchedulePhase.java:272)
        at org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.run(SchedulePhase.java:205)
        at com.oracle.graal.enterprise.t.a.run(stripped:105)
        at org.graalvm.compiler.phases.Phase.run(Phase.java:49)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:197)
        at org.graalvm.compiler.phases.Phase.apply(Phase.java:42)
        at org.graalvm.compiler.phases.Phase.apply(Phase.java:38)
        at org.graalvm.compiler.phases.common.FixReadsPhase.run(FixReadsPhase.java:605)
        at org.graalvm.compiler.phases.common.FixReadsPhase.run(FixReadsPhase.java:91)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:197)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:139)
        at org.graalvm.compiler.phases.PhaseSuite.run(PhaseSuite.java:209)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:197)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:139)
        at org.graalvm.compiler.core.GraalCompiler.emitFrontEnd(GraalCompiler.java:230)
        at org.graalvm.compiler.core.GraalCompiler.compile(GraalCompiler.java:144)
        at org.graalvm.compiler.core.GraalCompiler.compileGraph(GraalCompiler.java:129)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl.compilePEGraph(TruffleCompilerImpl.java:521)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl.compileAST(TruffleCompilerImpl.java:455)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl$TruffleCompilationWrapper.performCompilation(TruffleCompilerImpl.java:637)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl$TruffleCompilationWrapper.performCompilation(TruffleCompilerImpl.java:579)
        at org.graalvm.compiler.core.CompilationWrapper.run(CompilationWrapper.java:178)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl.doCompile(TruffleCompilerImpl.java:280)
        at org.graalvm.compiler.truffle.compiler.hotspot.libgraal.HotSpotToSVMEntryPoints.doCompile(HotSpotToSVMEntryPoints.java:253)

*** installing help indices
*** copying figures
** building package indices
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl$TruffleCompilationWrapper.performCompilation(TruffleCompilerImpl.java:579)
        at org.graalvm.compiler.core.CompilationWrapper.run(CompilationWrapper.java:178)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl.doCompile(TruffleCompilerImpl.java:280)
        at org.graalvm.compiler.truffle.compiler.hotspot.libgraal.HotSpotToSVMEntryPoints.doCompile(HotSpotToSVMEntryPoints.java:253)

** help
[truffle] opt fail         envhook <split-6de606e0>                                    |Reason java.lang.NullPointerException
java.lang.NullPointerException
        at org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.checkKillsBetween(SchedulePhase.java:332)
        at org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.calcLatestBlock(SchedulePhase.java:577)
        at com.oracle.graal.enterprise.t.a$a.calcLatestBlock(stripped:526)
        at org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.calcLatestBlocks(SchedulePhase.java:272)
        at org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.run(SchedulePhase.java:205)
        at com.oracle.graal.enterprise.t.a.run(stripped:105)
        at org.graalvm.compiler.phases.Phase.run(Phase.java:49)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:197)
        at org.graalvm.compiler.phases.Phase.apply(Phase.java:42)
        at org.graalvm.compiler.phases.Phase.apply(Phase.java:38)
        at org.graalvm.compiler.phases.common.FixReadsPhase.run(FixReadsPhase.java:605)
        at org.graalvm.compiler.phases.common.FixReadsPhase.run(FixReadsPhase.java:91)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:197)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:139)
        at org.graalvm.compiler.phases.PhaseSuite.run(PhaseSuite.java:209)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:197)
        at org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:139)
        at org.graalvm.compiler.core.GraalCompiler.emitFrontEnd(GraalCompiler.java:230)
        at org.graalvm.compiler.core.GraalCompiler.compile(GraalCompiler.java:144)
        at org.graalvm.compiler.core.GraalCompiler.compileGraph(GraalCompiler.java:129)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl.compilePEGraph(TruffleCompilerImpl.java:521)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl.compileAST(TruffleCompilerImpl.java:455)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl$TruffleCompilationWrapper.performCompilation(TruffleCompilerImpl.java:637)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl$TruffleCompilationWrapper.performCompilation(TruffleCompilerImpl.java:579)
        at org.graalvm.compiler.core.CompilationWrapper.run(CompilationWrapper.java:178)
        at org.graalvm.compiler.truffle.compiler.TruffleCompilerImpl.doCompile(TruffleCompilerImpl.java:280)
        at org.graalvm.compiler.truffle.compiler.hotspot.libgraal.HotSpotToSVMEntryPoints.doCompile(HotSpotToSVMEntryPoints.java:253)

...

bug compiler

All 5 comments

@davleopo maybe you could look into this?

This looks like a known problem in 19.2.0, which was fixed in the development version.

I'm closing this issue on the optimistic assumption that the fix is in master. Please feel free to re-open it if the problem still occurs in a build that includes the fix.

Thanks, @dougxc and @steve-s!

Was this page helpful?
0 / 5 - 0 ratings