diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-07-08 18:00:28 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-07-08 18:00:28 -0400 |
commit | e2a3d40258fe20d205f8ed592e1e2c0d5529c2e1 (patch) | |
tree | b8d778fb559c581e08bfc86831d16ee1cd43c841 /include/asm-powerpc/system.h | |
parent | a496e25dfb25493a57bcee5d66875d6ff80a9093 (diff) |
power: improve inline asm memory constraints
Use "+m" rather than a combination of "=m" and "m" for improved
clarity and consistency.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/asm-powerpc/system.h')
-rw-r--r-- | include/asm-powerpc/system.h | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/include/asm-powerpc/system.h b/include/asm-powerpc/system.h index d075725bf444..c6569516ba35 100644 --- a/include/asm-powerpc/system.h +++ b/include/asm-powerpc/system.h | |||
@@ -220,8 +220,8 @@ __xchg_u32(volatile void *p, unsigned long val) | |||
220 | " stwcx. %3,0,%2 \n\ | 220 | " stwcx. %3,0,%2 \n\ |
221 | bne- 1b" | 221 | bne- 1b" |
222 | ISYNC_ON_SMP | 222 | ISYNC_ON_SMP |
223 | : "=&r" (prev), "=m" (*(volatile unsigned int *)p) | 223 | : "=&r" (prev), "+m" (*(volatile unsigned int *)p) |
224 | : "r" (p), "r" (val), "m" (*(volatile unsigned int *)p) | 224 | : "r" (p), "r" (val) |
225 | : "cc", "memory"); | 225 | : "cc", "memory"); |
226 | 226 | ||
227 | return prev; | 227 | return prev; |
@@ -240,8 +240,8 @@ __xchg_u64(volatile void *p, unsigned long val) | |||
240 | " stdcx. %3,0,%2 \n\ | 240 | " stdcx. %3,0,%2 \n\ |
241 | bne- 1b" | 241 | bne- 1b" |
242 | ISYNC_ON_SMP | 242 | ISYNC_ON_SMP |
243 | : "=&r" (prev), "=m" (*(volatile unsigned long *)p) | 243 | : "=&r" (prev), "+m" (*(volatile unsigned long *)p) |
244 | : "r" (p), "r" (val), "m" (*(volatile unsigned long *)p) | 244 | : "r" (p), "r" (val) |
245 | : "cc", "memory"); | 245 | : "cc", "memory"); |
246 | 246 | ||
247 | return prev; | 247 | return prev; |
@@ -299,8 +299,8 @@ __cmpxchg_u32(volatile unsigned int *p, unsigned long old, unsigned long new) | |||
299 | ISYNC_ON_SMP | 299 | ISYNC_ON_SMP |
300 | "\n\ | 300 | "\n\ |
301 | 2:" | 301 | 2:" |
302 | : "=&r" (prev), "=m" (*p) | 302 | : "=&r" (prev), "+m" (*p) |
303 | : "r" (p), "r" (old), "r" (new), "m" (*p) | 303 | : "r" (p), "r" (old), "r" (new) |
304 | : "cc", "memory"); | 304 | : "cc", "memory"); |
305 | 305 | ||
306 | return prev; | 306 | return prev; |
@@ -322,8 +322,8 @@ __cmpxchg_u64(volatile unsigned long *p, unsigned long old, unsigned long new) | |||
322 | ISYNC_ON_SMP | 322 | ISYNC_ON_SMP |
323 | "\n\ | 323 | "\n\ |
324 | 2:" | 324 | 2:" |
325 | : "=&r" (prev), "=m" (*p) | 325 | : "=&r" (prev), "+m" (*p) |
326 | : "r" (p), "r" (old), "r" (new), "m" (*p) | 326 | : "r" (p), "r" (old), "r" (new) |
327 | : "cc", "memory"); | 327 | : "cc", "memory"); |
328 | 328 | ||
329 | return prev; | 329 | return prev; |