Generate interpreter entries only once and avoid unnecessary jump to jump

XMLWordPrintable

    • Type: Enhancement
    • Resolution: Fixed
    • Priority: P4
    • 9
    • Affects Version/s: 9
    • Component/s: hotspot
    • None
    • b89

        The interpreter generator currently generates normal and native entries many times because special entries either include a slow path or generate the normal or native entry again. This can be avoided by generating the normal and native entries once and reusing them by using the very same entry or by generating a jump to it. This makes the interpreter more compact saving generation time and space and it makes the interpreter more instruction cache friendly.

        In addition, the interpreter generator currently generates entries which don't do anything else than jumping to the respective entry. We can avoid this by jumping directly and saving the extra entry. This does not only improve performance, it also enables clear recognition for code which checks what kind of entry is used (e.g. in_native_entry(address pc) or AbstractInterpreter::is_not_reached).

              Assignee:
              Martin Doerr
              Reporter:
              Martin Doerr
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: