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

[lworld] Restoring inline class mirrors with CDS.

XMLWordPrintable

    • generic
    • generic

      All the VectorPayloadMF* classes in lworld+vector are part of java.base modules and thus gets archived into a classes.jsa.

      Code for bookkeeping InlineKlassFixedBlock pointer containing packing/unpacking adapters, exact bundle size etc. is removed from lworld branch, this causes problem in down stream flow accessing those fields.

      InstanceKlass::size method takes into account size of InlineKlassFixedBlock and therefore its contents are already part of shared archive, reinitialize it by making an explicit call to inlineklass_static_block() during unshared field restoration.

      Java class structure contains primaryType (pointer to primitive klass mirrors) and secondaryTypes (pointer to primitive values mirrors), these are no-longer getting restored during shared archive loading at VM startup. These pointer are used for class level equality comparison.

            jbhateja Jatin Bhateja
            jbhateja Jatin Bhateja
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: