Introduce umbrella header orderAccess.inline.hpp

Stefan Karlsson stefan.karlsson at oracle.com
Tue Apr 29 14:54:47 UTC 2014


Hi Goetz,

On 2014-04-29 16:08, Lindenmaier, Goetz wrote:
> Hi,
>
> I would like to contribute a change that introduces an umbrella header
> orderAccess.inline.hpp to avoid the long #ifdef TARGET_OS_ARCH cascades.
> There aren't too much of these, but that's because most files that
> require that include automagically include the files with the
> implementation.
> 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.

This seems like a good change to me.

StefanK

>    The webrev below isn't tested
> sufficiently yet.
>
> Preliminary webrev:
> http://cr.openjdk.java.net/~goetz/webrevs/orderAcc_proposal/
>
> 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
> called.
>
> 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
> functions.
>
> 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:
>
> src/cpu/ppc/vm/javaFrameAnchor_ppc.hpp
> src/cpu/sparc/vm/javaFrameAnchor_sparc.hpp
> src/share/vm/classfile/classLoader.hpp
> src/share/vm/gc_implementation/concurrentMarkSweep/freeChunk.hpp
> src/share/vm/memory/cardTableModRefBS.hpp
> src/share/vm/oops/constantPool.hpp
> src/share/vm/oops/cpCache.hpp
> src/share/vm/oops/instanceKlass.hpp
> src/share/vm/oops/method.hpp
> src/share/vm/oops/methodData.hpp
> src/share/vm/oops/typeArrayOop.hpp
> src/share/vm/runtime/interfaceSupport.hpp
> src/share/vm/utilities/array.hpp
> src/share/vm/utilities/taskqueue.hpp
>
> Best regards,
>    Goetz.



More information about the hotspot-dev mailing list