RFR (Tedious) 8204301: Make OrderAccess functions available to hpp rather than inline.hpp files

David Holmes david.holmes at oracle.com
Wed Jun 6 00:45:05 UTC 2018


Hi Coleen,

On 6/06/2018 7:19 AM, coleen.phillimore at oracle.com wrote:
> Summary: move orderAccess.inline.hpp into orderAccess.hpp and remove 
> os.hpp inclusion and conditional os::is_MP() for fence on x86 platforms
> 
> See discussion in bug.  Left os::is_MP() conditional for arm32. Tested 
> by Boris U, thanks!
> 
> open webrev at http://cr.openjdk.java.net/~coleenp/8204301.01/webrev
> bug link https://bugs.openjdk.java.net/browse/JDK-8204301

That all looks fine to me.

Only observation I have is that I think the compiler_barrier() calls in 
the x86 fence routines (except perhaps Windows) are redundant. I think 
the original code should have been:

if (os::is_MP()) {
   __ asm lock add ...
else
   compiler_barrier();
}

but this is harmless and has no runtime impact.

Thanks,
David

> Tested on mach5 hs-tier1-2 on Oracle platforms: linux-x64, windows-x64, 
> macosx-x64 and solaris-sparcv9.  Built on linux-aarch64 and 
> linux-zero.   Boris built on arm32.  There were no actual changes on 
> s390 or ppc.
> 
> Thanks,
> Coleen


More information about the hotspot-dev mailing list