ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libecb/ecb.h
(Generate patch)

Comparing libecb/ecb.h (file contents):
Revision 1.174 by root, Wed Nov 25 02:36:53 2015 UTC vs.
Revision 1.175 by root, Wed Dec 2 08:30:07 2015 UTC

171 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("mfence" : : : "memory") 171 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("mfence" : : : "memory")
172 #define ECB_MEMORY_FENCE_ACQUIRE __asm__ __volatile__ ("" : : : "memory") 172 #define ECB_MEMORY_FENCE_ACQUIRE __asm__ __volatile__ ("" : : : "memory")
173 #define ECB_MEMORY_FENCE_RELEASE __asm__ __volatile__ ("") 173 #define ECB_MEMORY_FENCE_RELEASE __asm__ __volatile__ ("")
174 #elif __powerpc__ || __ppc__ || __powerpc64__ || __ppc64__ 174 #elif __powerpc__ || __ppc__ || __powerpc64__ || __ppc64__
175 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("sync" : : : "memory") 175 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("sync" : : : "memory")
176 #elif defined __ARM_ARCH_2__ \
177 || defined __ARM_ARCH_3__ || defined __ARM_ARCH_3M__ \
178 || defined __ARM_ARCH_4__ || defined __ARM_ARCH_4T__ \
179 || defined __ARM_ARCH_5__ || defined __ARM_ARCH_5E__ \
180 || defined __ARM_ARCH_5T__ || defined __ARM_ARCH_5TE__ \
181 || defined __ARM_ARCH_5TEJ__
182 /* should not need any, unless running old code on newer cpu - arm doesn't support that */
176 #elif defined __ARM_ARCH_6__ || defined __ARM_ARCH_6J__ \ 183 #elif defined __ARM_ARCH_6__ || defined __ARM_ARCH_6J__ \
177 || defined __ARM_ARCH_6K__ || defined __ARM_ARCH_6ZK__ 184 || defined __ARM_ARCH_6K__ || defined __ARM_ARCH_6ZK__ \
185 || defined __ARM_ARCH_6T2__
178 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("mcr p15,0,%0,c7,c10,5" : : "r" (0) : "memory") 186 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("mcr p15,0,%0,c7,c10,5" : : "r" (0) : "memory")
179 #elif defined __ARM_ARCH_7__ || defined __ARM_ARCH_7A__ \ 187 #elif defined __ARM_ARCH_7__ || defined __ARM_ARCH_7A__ \
180 || defined __ARM_ARCH_7M__ || defined __ARM_ARCH_7R__ 188 || defined __ARM_ARCH_7R__ || defined __ARM_ARCH_7M__
181 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("dmb" : : : "memory") 189 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("dmb" : : : "memory")
182 #elif __aarch64__ 190 #elif __aarch64__
183 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("dmb ish" : : : "memory") 191 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("dmb ish" : : : "memory")
184 #elif (__sparc || __sparc__) && !(__sparc_v8__ || defined __sparcv8) 192 #elif (__sparc || __sparc__) && !(__sparc_v8__ || defined __sparcv8)
185 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("membar #LoadStore | #LoadLoad | #StoreStore | #StoreLoad" : : : "memory") 193 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("membar #LoadStore | #LoadLoad | #StoreStore | #StoreLoad" : : : "memory")

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines