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

[lworld] Infinite invocation of PhiNode::push_inline_types_through

XMLWordPrintable

      In some cases, for example when running tests with attached circularity.patch (TestNullableInlineTypes::test96 fails to compile), PhiNode::push_inline_types_through is invoked infinitely.

      In the past, running the following tests also triggered similar issues:
      TestLWorld -XX:+UseZGC -DScenarios=0 -DTest=test69
      TestLWorld -XX:-TieredCompilation -XX:-DoEscapeAnalysis -XX:+AlwaysIncrementalInline

      We need to re-design the optimization to make it more robust.

      In addition, all code marked with "TODO 8302217" needs to be fixed.

      The code that pushes casts through the InlineTypeNode should also be revisited (it also exists in ConstraintCastNode::Ideal). We currently clone the cast and use it to cast the oop input. That's not correct because the inline type might well be non-buffered in which cases the oop input is null and the cast will result in a top oop input.

            chagedorn Christian Hagedorn
            thartmann Tobias Hartmann
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: