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

Pre-resolve references to archived system classes

    Details

      Description

      One additional optimization with CDS is to pre-resolve references to archived system classes loaded by the boot loader at dump time. This will help further improve runtime performance. It will also provide opportunities for AOT to generate more efficient code.

      However, for an archived class X, it's safe to pre-resolve references to X's super classes and super interfaces. This should be safe even if some of the super classes/super interfaces have been redefined -- X will not be loaded from the archive anyway, so whatever we store in the archived ConstantPool doesn't matter.

      Also, it's safe to resolve references to SystemDictionary::_well_known_klasses. These classes are loaded in the "early" stage of VM start-up, and CDS will be disabled if JvmtiExport::has_early_class_hook_env(). This means when CDS is in used, the well-known classes will never be redefined.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                jiangli Jiangli Zhou
                Reporter:
                jiangli Jiangli Zhou
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated: