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

Extend loop unswitching to handle loop predicates with a control dependency to partially peeled statements

    Details

    • Type: Enhancement
    • Status: Open
    • Priority: P4
    • Resolution: Unresolved
    • Affects Version/s: 11, 12, 13, 14, 15, 16
    • Fix Version/s: tbd
    • Component/s: hotspot
    • Labels:
    • Subcomponent:
    • Understanding:
      Cause Known

      Description

      An initial attempt was made in JDK-8233033. However, the fix assumed wrongly that partially peeled statements always have a dependency inside the loop to be unswitched (i.e. when following their outputs eventually a phi node is hit belonging to either the slow or the fast loop). This is not always the case (JDK-8235984).

      The fix for JDK-8233033 was replaced in JDK-8235984 by a simple bailout for JDK-14. A proper fix could be targeted for JDK-15.

        Attachments

          Issue Links

            Activity

              People

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

                Dates

                • Created:
                  Updated: