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

dynamic languages need dynamically linked call sites

    Details

    • Type: Enhancement
    • Status: Closed
    • Priority: P3
    • Resolution: Fixed
    • Affects Version/s: 7
    • Fix Version/s: hs16
    • Component/s: hotspot
    • Subcomponent:
    • Resolved In Build:
      b02
    • CPU:
      generic
    • OS:
      generic
    • Verification:
      Verified

      Backports

        Description

        See "Notes on an Architecture for Dynamic Invocation"
        http://blogs.sun.com/jrose/entry/notes_on_an_architecture_for

        Dynamic languages have rich, loosely-linked call sites. The present JVM architecture supports Java call sites directly, and these are statically linked, with carefully limited dynamic linking and dispatch. It is difficult to emulate more dynamic call sites; the simulation overheads make for complex implementation, voluminous bytecodes, slow interpreted execution, and poor optimizability in the JIT.

        The solution is JVM support for a new sort of call site, sometimes called "invokedynamic". This is the prime deliverable of JSR 292.

        In JSR 292 Expert Group deliberations so far, dynamic call sites appear to require a separate, lower-level facility for specifying independent units of behavior, called called method handles (6655638). The present RFE would add dynamic (re-)linking and an architecture for programmable method guards (type dispatch) to obtain the desired dynamic call sites.

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  jrose John Rose
                  Reporter:
                  jrose John Rose
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  0 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:
                    Imported:
                    Indexed: