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

[AOT][Graal] FloatingRead scheduling problem

XMLWordPrintable

    • x86_64
    • linux
    • Verified

            Context: StructuredGraph:1{HotSpotMethod<FtpClient.login(String, char[])>}
                          [thread:11] scope: pool-1-thread-1.AOTCompileMethod.GraalCompilerRoot.GraalCompiler.FrontEnd.MidTier.LoweringPhase.IncrementalCanonicalizerPhase.LoweringPhase_Round.SchedulePhase.InterceptException
                          Exception occurred in scope: pool-1-thread-1.AOTCompileMethod.GraalCompilerRoot.GraalCompiler.FrontEnd.MidTier.LoweringPhase.IncrementalCanonicalizerPhase.LoweringPhase_Round.SchedulePhase.InterceptException
                          Context obj java.lang.RuntimeException: Floating read node 524|FloatingRead was not found in the state, i.e., it was killed by a memory check point before its place in the schedule. Block=B17, block begin: 659|Merge block loop: null, 659|Merge
                          Context obj org.graalvm.compiler.phases.schedule.SchedulePhase@50049587
                          Context obj org.graalvm.compiler.phases.common.LoweringPhase$Round@46ce55ab
                          Context obj org.graalvm.compiler.phases.common.IncrementalCanonicalizerPhase@3ce33c8b
                          Context obj org.graalvm.compiler.phases.common.LoweringPhase@1d1c4a3c
                          Context obj org.graalvm.compiler.core.phases.MidTier@69c05cb5
                          Context obj StructuredGraph:1{HotSpotMethod<FtpClient.login(String, char[])>}
                          Context obj jdk.vm.ci.hotspot.HotSpotCodeCacheProvider@78b55776
      Error: Failed compilation: sun.net.ftp.impl.FtpClient.login(Ljava/lang/String;[C)Lsun/net/ftp/FtpClient;: java.lang.RuntimeException: Floating read node 524|FloatingRead was not found in the state, i.e., it was killed by a memory check point before its place in the schedule. Block=B17, block begin: 659|Merge block loop: null, 659|Merge
      java.lang.RuntimeException: Floating read node 524|FloatingRead was not found in the state, i.e., it was killed by a memory check point before its place in the schedule. Block=B17, block begin: 659|Merge block loop: null, 659|Merge
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.schedule.MemoryScheduleVerification.processBlock(MemoryScheduleVerification.java:99)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.schedule.MemoryScheduleVerification.processBlock(MemoryScheduleVerification.java:46)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.graph.ReentrantBlockIterator.apply(ReentrantBlockIterator.java:123)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.graph.ReentrantBlockIterator.apply(ReentrantBlockIterator.java:95)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.schedule.MemoryScheduleVerification.check(MemoryScheduleVerification.java:51)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.scheduleEarliestIterative(SchedulePhase.java:884)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.run(SchedulePhase.java:169)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.schedule.SchedulePhase.run(SchedulePhase.java:128)
      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:203)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.Phase.apply(Phase.java:40)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.common.LoweringPhase$Round.run(LoweringPhase.java:335)
      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:203)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:134)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.PhaseSuite.run(PhaseSuite.java:179)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.common.IncrementalCanonicalizerPhase.run(IncrementalCanonicalizerPhase.java:54)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.common.IncrementalCanonicalizerPhase.run(IncrementalCanonicalizerPhase.java:36)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:203)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:134)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.common.LoweringPhase.lower(LoweringPhase.java:248)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.common.LoweringPhase.checkPostLowering(LoweringPhase.java:233)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.common.LoweringPhase.run(LoweringPhase.java:242)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.common.LoweringPhase.run(LoweringPhase.java:86)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:203)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:134)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.PhaseSuite.run(PhaseSuite.java:179)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:203)
      at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:134)
      at jdk.internal.vm.compiler/org.graalvm.compiler.core.GraalCompiler.emitFrontEnd(GraalCompiler.java:236)
      at jdk.internal.vm.compiler/org.graalvm.compiler.core.GraalCompiler.compile(GraalCompiler.java:174)
      at jdk.internal.vm.compiler/org.graalvm.compiler.core.GraalCompiler.compileGraph(GraalCompiler.java:160)
      at jdk.aot/jdk.tools.jaotc.AOTBackend.compileGraph(AOTBackend.java:130)
      at jdk.aot/jdk.tools.jaotc.AOTBackend.compileMethod(AOTBackend.java:99)
      at jdk.aot/jdk.tools.jaotc.AOTCompilationTask.run(AOTCompilationTask.java:121)
      at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1161)
      at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
      at java.base/java.lang.Thread.run(Thread.java:844)



      Steps to reproduce:

      #hg clone http://hg.openjdk.java.net/jdk10/hs jdk10-hs
      #cd jdk10-hs
      #sh ./get_source.sh http://closedjdk.us.oracle.com
      #sh ./configure --with-debug-level=release --disable-deploy --disable-installer --disable-keep-packaged-modules --without-import-modules
      #make images
      # export JAVA_HOME=build/linux-x86_64-normal-server-release/images/jdk
      #cat > l << end
      compileOnly sun.net.ftp.impl.FtpClient.login(Ljava/lang/String;[C)Lsun/net/ftp/FtpClient;
      end
      #$JAVA_HOME/bin/jaotc -J-Xmx4G -J-ea -J-esa --compile-commands l --output xx.so --module java.base --info --verbose


            iveresov Igor Veresov
            iveresov Igor Veresov
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: