RFR(L): 8049325: Introduce and clean up umbrella headers for the files in the cpu subdirectories
goetz.lindenmaier at sap.com
Mon Jul 7 08:52:31 UTC 2014
I decided to clean up the remaining include cascades, too.
This change introduces umbrella headers for the files in the cpu subdirectories:
It also cleans up the include cascades for adGlobals*.hpp,
jniTypes*.hpp, vm_version*.hpp and register*.hpp.
Where possible, this change avoids includes in headers.
Eventually it adds a forward declaration.
vmreg_<cpu>.inline.hpp contains functions declared in register_cpu.hpp
and vmreg.hpp, so there is no obvious mapping to the shared files.
Still, I did not split the files in the cpu directories, as they are
I didn't introduce a file for adGlobals_<cpu>.hpp, as adGlobals mainly
contains machine dependent, c2 specific register information. So I
think optoreg.hpp is a good header to place the adGlobals_<cpu>.hpp includes in,
and then use optoreg.hpp where symbols from adGlobals are needed.
I moved the constructor and destructor of CodeletMark to the .cpp
file, I don't think this is performance relevant. But having them in
the header requirs to pull interp_masm.hpp into interpreter.hpp, and
thus all the assembler include headers into a lot of files.
Please review and test this change. I please need a sponsor.
I compiled and tested this without precompiled headers on linuxx86_64, linuxppc64,
windowsx86_64, solaris_sparc64, solaris_sparc32, darwinx86_64, aixppc64, ntamd64
in opt, dbg and fastdbg versions.
Currently, the change applies to hs-rt, but once my other change arrives in other
repos, it will work there, too. (I tested it together with the other change
against jdk9/dev, too.)
PS: I also did all the Copyright adaptions ;)
More information about the hotspot-dev