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

C2 must re-execute checks after deoptimizing from merged uncommon traps

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P1
    • 9
    • 9
    • hotspot
    • None
    • b96
    • Verified

    Description

      C2 merges the branches that trap for an If and the dominating If into a single region that branches to the uncommon trap for the dominating If. The problem is that if the dominating If branches to an uncommon trap with 'Reason_unloaded', the merged uncommon trap will not re-execute the checks but directly execute the branch of the first If. This leads to wrong code being executed. Since we don't know which of the two checks failed, we have to re-execute both.

      Attachments

        Issue Links

          Activity

            People

              thartmann Tobias Hartmann
              thartmann Tobias Hartmann
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: