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

Move lambda bridge creation from metafactory and VM to compiler

    XMLWordPrintable

Details

    • b99
    • generic
    • generic
    • Verified

    Description

      The metafactory and VM have turned out to be incapable of handling all lambda bridging situations. The compiler instead needs to generate bridges in interfaces. In cases where this cannot be done, specifically the interface is not recompiled, the compiler will pass to the metafactory a list of bridges to create. The metafactory will no longer use heuristics to generate bridges, and will only generate bridges the compiler explicitly specifies (if any).

      These change were pushed and then anti-deltaed when they were found to uncover bugs in Hotspot. They thus are not actually in the build, this umbrella issue will track their reintroduction:
      JDK-8013789: Compiler should emit bridges in interfaces
      JDK-8015402: Lambda metafactory should not attempt to generate bridge methods

      Attachments

        Activity

          People

            rfield Robert Field (Inactive)
            rfield Robert Field (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: