Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8336658 Reorganize and systematize Hotspot runtime stub generation code
  3. JDK-8339849

Enumerate opto and C1 stubs, generate enums, names, fields and generator calls

    XMLWordPrintable

Details

    • b16
    • generic
    • generic

    Description

      This enhancement systematizes handling of Opto and C1 stubs using a similar stub declaration format as the one used for Shared stubs.

      A unique (enum) id is generated for each Opto/C1 stub. Declarations/definitions for the stub's name and, in the case of Opto stubs, the static field storing the associated blob/entry address are also generated.

      Opto static field names remain the same so no changes are required to client code that references these fields.

      The names for generated Opto and C1 stubs/blobs are regularized and made available via a name lookup method requiring a few changes to arch-specific generator implementations and to test code.

      Opto stub generator calls are cloned from the stub/blob declarations, replacing the existing table of calls with an iterator macro.

      The changes to C1 code replace the existing generation scheme with one driven from the stub definitions, making them uniform with Shared and Opto stubs. This requires systematic changes to arch-specific client code, in particular to idenitfy stubs using enum tags relocated from class `c1_Runtime` to enum C1StubId`.

      Attachments

        Issue Links

          Activity

            People

              adinn Andrew Dinn
              adinn Andrew Dinn
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: