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

Remove excessive header file inclusion from systemDictionary.hpp and others

    XMLWordPrintable

    Details

    • Type: Enhancement
    • Status: Resolved
    • Priority: P4
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 16
    • Component/s: hotspot
    • Subcomponent:
    • Resolved In Build:
      b14

      Description

      systemDictionary.hpp is a populer header file (included over 600 times). It includes many files unnecessarily

      http://hg.openjdk.java.net/jdk/jdk/file/8ada048df69d/src/hotspot/share/classfile/systemDictionary.hpp

      #include "classfile/classLoaderData.hpp"
      #include "oops/objArrayOop.hpp"
      #include "oops/symbol.hpp"
      #include "runtime/java.hpp"
      #include "runtime/mutexLocker.hpp"
      #include "runtime/reflectionUtils.hpp"
      #include "utilities/hashtable.hpp"

      It also declares ClassInstanceInfo/ClassLoadInfo which are used by only 10 files. These two classes should be refactored into a new header file.
      ===========
      signature.hpp is a populer header file (included over 600 times). It uses SymbolTable::new_symbol on a non-critical path. This code should be moved to signature.cpp.

      http://hg.openjdk.java.net/jdk/jdk/file/8ada048df69d/src/hotspot/share/runtime/signature.hpp#l134

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              iklam Ioi Lam
              Reporter:
              iklam Ioi Lam
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: