src/atomic/SDL_atomic.c
changeset 8096 132b47684fbf
parent 8093 b43765095a6f
child 8149 681eb46b8ac4
equal deleted inserted replaced
8095:15b248f1e5a0 8096:132b47684fbf
   202     } while (!SDL_AtomicCASPtr(a, value, value));
   202     } while (!SDL_AtomicCASPtr(a, value, value));
   203     return value;
   203     return value;
   204 }
   204 }
   205 
   205 
   206 #ifdef __thumb__
   206 #ifdef __thumb__
       
   207 #if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__)
   207 __asm__(
   208 __asm__(
   208 "   .align 2\n"
   209 "   .align 2\n"
   209 "   .globl _SDL_MemoryBarrierRelease\n"
   210 "   .globl _SDL_MemoryBarrierRelease\n"
   210 "   .globl _SDL_MemoryBarrierAcquire\n"
   211 "   .globl _SDL_MemoryBarrierAcquire\n"
   211 "_SDL_MemoryBarrierRelease:\n"
   212 "_SDL_MemoryBarrierRelease:\n"
   213 "   mov r0, #0\n"
   214 "   mov r0, #0\n"
   214 "   mcr p15, 0, r0, c7, c10, 5\n"
   215 "   mcr p15, 0, r0, c7, c10, 5\n"
   215 "   bx lr\n"
   216 "   bx lr\n"
   216 );
   217 );
   217 #endif
   218 #endif
       
   219 #endif
   218 
   220 
   219 /* vi: set ts=4 sw=4 expandtab: */
   221 /* vi: set ts=4 sw=4 expandtab: */