C2: Cleanup loop invariance handling for data nodes dependent on projection into the loop

XMLWordPrintable

    • Type: Enhancement
    • Resolution: Unresolved
    • Priority: P4
    • tbd
    • Affects Version/s: 18, 19
    • Component/s: hotspot

      JDK-8146792 added code to treat data nodes which are dependent on the projection into the loop (after all predicates) as non-loop invariant. This avoids that a predicate is created with nodes that are still pinned further down at the projection into a loop (leads to a broken graph). A follow-up fix was required to fix some edge cases not covered by JDK-8146792 (JDK-8277529). However, the entire special handling for such data nodes should be revisited: We should directly compute the invariance based on other nodes and not preset them as non-invariant in the constructor. This makes it less error-prone and avoids surprises in the future when other new nodes are created which did not get the special check in the constructor.

            Assignee:
            Christian Hagedorn
            Reporter:
            Christian Hagedorn
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: