Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8234693 Consolidate CDS static and dynamic archive dumping code
  3. JDK-8236236

Eliminate CDS md region and consolidate c++ vtable patching code

XMLWordPrintable

    • b08

      This is the first step of JDK-8234693 Consolidate CDS static and dynamic archive dumping code

      Currently the static archive has 4 regions, in the order of MC,RW,RO,MD, but the dynamic archive has 3 regions, in the order of RW,RO,MC

      The difference in the number and ordering causes special handling code, e.g.,
      http://hg.openjdk.java.net/jdk/jdk/file/f33197adda9a/src/hotspot/share/memory/metaspaceShared.cpp#l2303

      The MD region is used only for the cloned CPP vtables. It's safe to move these into the MC region.

      Also, for c++ vtable patching, static archive MetaspaceShared::patch_cpp_vtable_pointers(), but dynamic archive uses MetaspaceShared::fix_cpp_vtable_for_dynamic_archive(). We should consolidate the code to just use the latter.

            iklam Ioi Lam
            iklam Ioi Lam
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: