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

Move array component mirror to instance of java/lang/Class

    XMLWordPrintable

    Details

    • Type: Enhancement
    • Status: Closed
    • Priority: P4
    • Resolution: Fixed
    • Affects Version/s: 9
    • Fix Version/s: 9
    • Component/s: hotspot
    • Subcomponent:
    • Resolved In Build:
      b24
    • Verification:
      Not verified

      Backports

        Description


        The component mirror now is an oop in ArrayKlass metadata, which is written once during initialization but has GC code to walk it in metadata during collections. There are also has compiler intrinsics to make getComponentType faster since it's a call inside the jvm.

        Moving this field could allow us to remove the special compiler intrinsic code, and it's the second to last oop that metadata points to.

        This field is could only be present in java/lang/Class instances and be overlaid on an injected field for InstanceKlasses so not add any space to the mirrors.

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                coleenp Coleen Phillimore
                Reporter:
                coleenp Coleen Phillimore
                Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved: