diff options
author | Maciej W. Rozycki <macro@linux-mips.org> | 2005-06-23 11:57:15 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2005-10-29 14:31:31 -0400 |
commit | c4559f67b73d6c34fde0faac5c6c890a2cf3527c (patch) | |
tree | 4063b3a937215684db85cc4f70eabd99cf3b8573 /include/asm-mips/system.h | |
parent | 69c75fb458cd81bb29e1d9580469110b00316748 (diff) |
Always use ".set mips3" rather than select between "mips2" or "mips3"
for assembling ll/sc sequences to avoid problems with 64-bit
configurations.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'include/asm-mips/system.h')
-rw-r--r-- | include/asm-mips/system.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/include/asm-mips/system.h b/include/asm-mips/system.h index b9c24bbad9e2..30c7ec1675ca 100644 --- a/include/asm-mips/system.h +++ b/include/asm-mips/system.h | |||
@@ -176,7 +176,7 @@ static inline unsigned long __xchg_u32(volatile int * m, unsigned int val) | |||
176 | unsigned long dummy; | 176 | unsigned long dummy; |
177 | 177 | ||
178 | __asm__ __volatile__( | 178 | __asm__ __volatile__( |
179 | " .set mips2 \n" | 179 | " .set mips3 \n" |
180 | "1: ll %0, %3 # xchg_u32 \n" | 180 | "1: ll %0, %3 # xchg_u32 \n" |
181 | " move %2, %z4 \n" | 181 | " move %2, %z4 \n" |
182 | " sc %2, %1 \n" | 182 | " sc %2, %1 \n" |
@@ -193,7 +193,7 @@ static inline unsigned long __xchg_u32(volatile int * m, unsigned int val) | |||
193 | unsigned long dummy; | 193 | unsigned long dummy; |
194 | 194 | ||
195 | __asm__ __volatile__( | 195 | __asm__ __volatile__( |
196 | " .set mips2 \n" | 196 | " .set mips3 \n" |
197 | "1: ll %0, %3 # xchg_u32 \n" | 197 | "1: ll %0, %3 # xchg_u32 \n" |
198 | " move %2, %z4 \n" | 198 | " move %2, %z4 \n" |
199 | " sc %2, %1 \n" | 199 | " sc %2, %1 \n" |
@@ -301,7 +301,7 @@ static inline unsigned long __cmpxchg_u32(volatile int * m, unsigned long old, | |||
301 | __asm__ __volatile__( | 301 | __asm__ __volatile__( |
302 | " .set push \n" | 302 | " .set push \n" |
303 | " .set noat \n" | 303 | " .set noat \n" |
304 | " .set mips2 \n" | 304 | " .set mips3 \n" |
305 | "1: ll %0, %2 # __cmpxchg_u32 \n" | 305 | "1: ll %0, %2 # __cmpxchg_u32 \n" |
306 | " bne %0, %z3, 2f \n" | 306 | " bne %0, %z3, 2f \n" |
307 | " move $1, %z4 \n" | 307 | " move $1, %z4 \n" |
@@ -320,7 +320,7 @@ static inline unsigned long __cmpxchg_u32(volatile int * m, unsigned long old, | |||
320 | __asm__ __volatile__( | 320 | __asm__ __volatile__( |
321 | " .set push \n" | 321 | " .set push \n" |
322 | " .set noat \n" | 322 | " .set noat \n" |
323 | " .set mips2 \n" | 323 | " .set mips3 \n" |
324 | "1: ll %0, %2 # __cmpxchg_u32 \n" | 324 | "1: ll %0, %2 # __cmpxchg_u32 \n" |
325 | " bne %0, %z3, 2f \n" | 325 | " bne %0, %z3, 2f \n" |
326 | " move $1, %z4 \n" | 326 | " move $1, %z4 \n" |
@@ -376,7 +376,7 @@ static inline unsigned long __cmpxchg_u64(volatile int * m, unsigned long old, | |||
376 | __asm__ __volatile__( | 376 | __asm__ __volatile__( |
377 | " .set push \n" | 377 | " .set push \n" |
378 | " .set noat \n" | 378 | " .set noat \n" |
379 | " .set mips2 \n" | 379 | " .set mips3 \n" |
380 | "1: lld %0, %2 # __cmpxchg_u64 \n" | 380 | "1: lld %0, %2 # __cmpxchg_u64 \n" |
381 | " bne %0, %z3, 2f \n" | 381 | " bne %0, %z3, 2f \n" |
382 | " move $1, %z4 \n" | 382 | " move $1, %z4 \n" |