Mercurial > hg > graal-jvmci-8
comparison src/os_cpu/solaris_sparc/vm/orderAccess_solaris_sparc.inline.hpp @ 671:d0994e5bebce
6822204: volatile fences should prefer lock:addl to actual mfence instructions
Reviewed-by: kvn, phh
author | never |
---|---|
date | Thu, 26 Mar 2009 14:31:45 -0700 |
parents | a61af66fc99e |
children | bd02caa94611 |
comparison
equal
deleted
inserted
replaced
668:90a66aa50514 | 671:d0994e5bebce |
---|---|
58 | 58 |
59 inline void OrderAccess::release() { | 59 inline void OrderAccess::release() { |
60 dummy = 0; | 60 dummy = 0; |
61 } | 61 } |
62 | 62 |
63 #if defined(COMPILER2) || defined(_LP64) | |
64 | |
65 inline void OrderAccess::fence() { | 63 inline void OrderAccess::fence() { |
66 _OrderAccess_fence(); | 64 _OrderAccess_fence(); |
67 } | 65 } |
68 | |
69 #else // defined(COMPILER2) || defined(_LP64) | |
70 | |
71 inline void OrderAccess::fence() { | |
72 if (os::is_MP()) { | |
73 (*os::fence_func)(); | |
74 } | |
75 } | |
76 | |
77 #endif // defined(COMPILER2) || defined(_LP64) | |
78 | 66 |
79 #endif // _GNU_SOURCE | 67 #endif // _GNU_SOURCE |
80 | 68 |
81 inline jbyte OrderAccess::load_acquire(volatile jbyte* p) { return *p; } | 69 inline jbyte OrderAccess::load_acquire(volatile jbyte* p) { return *p; } |
82 inline jshort OrderAccess::load_acquire(volatile jshort* p) { return *p; } | 70 inline jshort OrderAccess::load_acquire(volatile jshort* p) { return *p; } |