Lines Matching +full:64 +full:m
34 #define __xchg_asm(ld, st, m, val) \ argument
36 __typeof(*(m)) __ret; \
52 : "=&r" (__ret), "=" GCC_OFF_SMALL_ASM() (*m) \
53 : GCC_OFF_SMALL_ASM() (*m), "Jr" (val) \
59 __ret = *m; \
60 *m = val; \
112 #define __cmpxchg_asm(ld, st, m, old, new) \ argument
114 __typeof(*(m)) __ret; \
132 : "=&r" (__ret), "=" GCC_OFF_SMALL_ASM() (*m) \
133 : GCC_OFF_SMALL_ASM() (*m), "Jr" (old), "Jr" (new) \
139 __ret = *m; \
141 *m = new; \
236 * The assembly below has to combine 32 bit values into a 64 bit in __cmpxchg64()
237 * register, and split 64 bit values from one register into two. If we in __cmpxchg64()
240 * most significant 32 bits of the 64 bit values we're using. In order in __cmpxchg64()
248 /* Load 64 bits from ptr */ in __cmpxchg64()
253 * Split the 64 bit value we loaded into the 2 registers that hold the in __cmpxchg64()
266 * variable into a single 64 bit register. in __cmpxchg64()
306 * 64-bits, ie. lld & scd. Our call to __cmpxchg64_unsupported \