NeverPartOfCompilation node slipping through the cracks

Stefan Marr java at stefan-marr.de
Fri Jul 4 20:37:55 UTC 2014


Hi:

I encountered an issue where a NeverPartOfCompilation node actually made it to a lowering phase (see output below).

I would guess there are constellations were inlining or so can lead to NeverPartOfCompilation becoming part of the graph after the check that verifies there are none.
In my case, I first saw hard crashes, and after investigating with assertions enabled, I was seeing ‘AssertionError: cannot lower to invoke without state’.

Best regards
Stefan

[thread:1] scope:
  [thread:1] scope: Truffle
    [thread:1] scope: Truffle.TruffleGraal.GraalCompiler
      [thread:1] scope: Truffle.TruffleGraal.GraalCompiler.GraalCompiler
        [thread:1] scope: Truffle.TruffleGraal.GraalCompiler.GraalCompiler.FrontEnd
          [thread:1] scope: Truffle.TruffleGraal.GraalCompiler.GraalCompiler.FrontEnd.HighTier
            [thread:1] scope: Truffle.TruffleGraal.GraalCompiler.GraalCompiler.FrontEnd.HighTier.LoweringPhase
              [thread:1] scope: Truffle.TruffleGraal.GraalCompiler.GraalCompiler.FrontEnd.HighTier.LoweringPhase.IncrementalCanonicalizerPhase
                [thread:1] scope: Truffle.TruffleGraal.GraalCompiler.GraalCompiler.FrontEnd.HighTier.LoweringPhase.IncrementalCanonicalizerPhase.LoweringPhase_Round
                  [thread:1] scope: Truffle.TruffleGraal.GraalCompiler.GraalCompiler.FrontEnd.HighTier.LoweringPhase.IncrementalCanonicalizerPhase.LoweringPhase_Round.InterceptException
                  Exception occurred in scope: Truffle.TruffleGraal.GraalCompiler.GraalCompiler.FrontEnd.HighTier.LoweringPhase.IncrementalCanonicalizerPhase.LoweringPhase_Round.InterceptException
                  Context obj java.lang.AssertionError: cannot lower to invoke without state: -1000013198|NeverPartOfCompilation
                  Context obj com.oracle.graal.phases.common.LoweringPhase$Round at 7598d675
                  Context obj com.oracle.graal.phases.common.IncrementalCanonicalizerPhase at 4946485c
                  Context obj com.oracle.graal.phases.common.LoweringPhase at 4ae958b0
                  Context obj com.oracle.graal.compiler.phases.HighTier at 7c682e26
                  Context obj StructuredGraph:23{Primitive PerformEnforcedWithArgumentsInSuperclassPrimObjectObjectArrayNode at 4f18837a, HotSpotMethod<OptimizedCallTarget.callRoot(Object[])>}
                  Use -G:+DumpOnError to enable dumping of graphs on this error
                  Context obj com.oracle.graal.hotspot.amd64.AMD64HotSpotCodeCacheProvider at 4ff074a0
                  Context obj StructuredGraph:23{Primitive PerformEnforcedWithArgumentsInSuperclassPrimObjectObjectArrayNode at 4f18837a, HotSpotMethod<OptimizedCallTarget.callRoot(Object[])>}
                  Use -G:+DumpOnError to enable dumping of graphs on this error
                  Context obj com.oracle.graal.hotspot.amd64.AMD64HotSpotCodeCacheProvider at 4ff074a0
                  Context obj Truffle<Primitive_PerformEnforcedWithArgumentsInSuperclassPrimObjectObjectArrayNode at 4f18837a()>
[truffle] opt fail         Primitive PerformEnforcedWithArgumentsInSuperclassPrimObjectObjectArrayNode at 4f18837a|Reason cannot lower to invoke without state: -1000013198|NeverPartOfCompilation
java.lang.AssertionError: cannot lower to invoke without state: -1000013198|NeverPartOfCompilation

-- 
Stefan Marr
INRIA Lille - Nord Europe
http://stefan-marr.de/research/





More information about the graal-dev mailing list