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

Type-based optimizations interfere with continuation methods

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P2
    • Resolution: Fixed
    • Affects Version/s: 9
    • Fix Version/s: 9
    • Component/s: core-libs
    • Labels:
      None
    • Subcomponent:
    • Resolved In Build:
      b17
    • CPU:
      generic
    • OS:
      generic
    • Verification:
      Verified

      Backports

        Description

        CodeGenerator has some type-based optimizations that only work for expressions of object types (namely, nullCheck and undefinedCheck). These optimizations kick in also if their operands get deoptimized to Object type even if they had a narrower type earlier.

        Transferring the control from a method to its continuation (rest-of) version is sensitive to having the same shape of stack at the same call sites as the method being deoptimized; these two optimizations violate this invariant though, and need to be disabled when they would affect the shape of the stack.

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                attila Attila Szegedi
                Reporter:
                attila Attila Szegedi
                Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved: