Introduce umbrella header orderAccess.inline.hpp
david.holmes at oracle.com
Tue Apr 29 23:13:56 UTC 2014
On 30/04/2014 12:08 AM, Lindenmaier, Goetz wrote:
> I would like to contribute a change that introduces an umbrella header
> orderAccess.inline.hpp to avoid the long #ifdef TARGET_OS_ARCH cascades.
I'm all for that! I've always hated those cascades. I wish there were
some way to parameterise the #include with a $PLATFORM variable.
> There aren't too much of these, but that's because most files that
> require that include automagically include the files with the
> With the umbrella header the includes can be listed explicitly without
> having to add the #ifdef platform cascades everywhere.
> This follows the scheme that was applied to atomic.inline.hpp.
> Please tell me whether this change is acceptable, then I will open
> an appropriate bug and send a RFR. The webrev below isn't tested
> sufficiently yet.
> Preliminary webrev:
> The change would introduce the new file runtime/orderAccess.inline.hpp.
> Further this change adds includes of orderAccess.inline.hpp in all .cpp
> and .inline.hpp files where a method of OrderAccess declared 'inline' is
> Finally it moves methods calling inline methods of OrderAccess from
> g1CollectedHeap.hpp and thread.hpp to the corresponding .inline.hpp
> files and adds the necessary includes in files using the moved
> Still a lot of calls to inline methods of OrderAccess in .hpp
> files aren't preceded by an according include. But for these
> files an appropriate .inline.hpp file is missing:
I'm unclear what this means. Do we need to add .inline.hpp files for these?
Some of our compilers are very picky about declaration and use of inline
> Best regards,
More information about the hotspot-dev