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

Eventually retire RuntimeNodes

    Details

    • Type: Enhancement
    • Status: Resolved
    • Priority: P4
    • Resolution: Duplicate
    • Affects Version/s: 9
    • Fix Version/s: None
    • Component/s: core-libs
    • Labels:
      None

      Description

      RuntimeNodes are a bit schizophrenic. They are both a high level construct and a low level construct at the same time. It's probably wrong to introduce them in Lower already, as later analysis can turn e.g. an Object + int add into an int + int add, which really did not require the runtime node at all. They are also nasty to work with in that they have an arbitrary number of arguments, and the argument count is dependent on its node type.

      I suggest that we get rid of them altogether and implement enter/exit visitors for their respective requests in CodeGenerator instead. This significantly shortens Lower, and I don't think the additional logic in codegen is much worse than what we alredy have.

      Of course the runtime node generator for specializations will remain.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                lagergren Marcus Lagergren
                Reporter:
                lagergren Marcus Lagergren
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: