Displaying 1 result from an estimated 1 matches for "__kuser_cmpxchg".
2009 Sep 08
0
[LLVMdev] sys::MemoryFence() using __sync_synchronize() with GCC on ARM does not generate a memory fence
...ess
*
* Output:
*
* none
*
* Clobbered:
*
* none
*
* Definition and user space usage example:
*
* typedef void (__kernel_dmb_t)(void);
* #define __kernel_dmb (*(__kernel_dmb_t *)0xffff0fa0)
*
* Apply any needed memory barrier to preserve consistency with data modified
* manually and __kuser_cmpxchg usage.
*
* This could be used as follows:
*
* #define __kernel_dmb() \
* asm volatile ( "mov r0, #0xffff0fff; mov lr, pc; sub pc, r0, #95" \
* : : : "r0", "lr","cc" )
*/
Cheers
Xerxes