-
Enhancement
-
Resolution: Fixed
-
P4
-
None
-
b07
perfData.hpp is about 1000 lines long, and is included by 829 out of about 1000 HotSpot .o files.
Several popular headers (such as synchronizer.hpp, objectMonitor.hpp, threadLocalAllocBuffer.hpp) include perfData.hpp. However, since these headers just declare pointers like
PerfCounter* foo;
There's no need to include perfData.hpp. A forward declaration of the PerfCount type would suffice.
With forward declaration, we can remove perfData.hpp from these headers. This reduces the number of .o files that include perfData.hpp to 183. Build time of HotSpot is reduced by about 0.4%.
Several popular headers (such as synchronizer.hpp, objectMonitor.hpp, threadLocalAllocBuffer.hpp) include perfData.hpp. However, since these headers just declare pointers like
PerfCounter* foo;
There's no need to include perfData.hpp. A forward declaration of the PerfCount type would suffice.
With forward declaration, we can remove perfData.hpp from these headers. This reduces the number of .o files that include perfData.hpp to 183. Build time of HotSpot is reduced by about 0.4%.