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

    • b16
    • generic
    • generic

      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`.

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

              Created:
              Updated:
              Resolved: