aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm/atomic.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/include/asm/atomic.h')
-rw-r--r--arch/arm/include/asm/atomic.h26
1 files changed, 13 insertions, 13 deletions
diff --git a/arch/arm/include/asm/atomic.h b/arch/arm/include/asm/atomic.h
index da1c77d39327..6447a0b7b127 100644
--- a/arch/arm/include/asm/atomic.h
+++ b/arch/arm/include/asm/atomic.h
@@ -301,8 +301,8 @@ static inline void atomic64_add(u64 i, atomic64_t *v)
301 301
302 __asm__ __volatile__("@ atomic64_add\n" 302 __asm__ __volatile__("@ atomic64_add\n"
303"1: ldrexd %0, %H0, [%3]\n" 303"1: ldrexd %0, %H0, [%3]\n"
304" adds %0, %0, %4\n" 304" adds %Q0, %Q0, %Q4\n"
305" adc %H0, %H0, %H4\n" 305" adc %R0, %R0, %R4\n"
306" strexd %1, %0, %H0, [%3]\n" 306" strexd %1, %0, %H0, [%3]\n"
307" teq %1, #0\n" 307" teq %1, #0\n"
308" bne 1b" 308" bne 1b"
@@ -320,8 +320,8 @@ static inline u64 atomic64_add_return(u64 i, atomic64_t *v)
320 320
321 __asm__ __volatile__("@ atomic64_add_return\n" 321 __asm__ __volatile__("@ atomic64_add_return\n"
322"1: ldrexd %0, %H0, [%3]\n" 322"1: ldrexd %0, %H0, [%3]\n"
323" adds %0, %0, %4\n" 323" adds %Q0, %Q0, %Q4\n"
324" adc %H0, %H0, %H4\n" 324" adc %R0, %R0, %R4\n"
325" strexd %1, %0, %H0, [%3]\n" 325" strexd %1, %0, %H0, [%3]\n"
326" teq %1, #0\n" 326" teq %1, #0\n"
327" bne 1b" 327" bne 1b"
@@ -341,8 +341,8 @@ static inline void atomic64_sub(u64 i, atomic64_t *v)
341 341
342 __asm__ __volatile__("@ atomic64_sub\n" 342 __asm__ __volatile__("@ atomic64_sub\n"
343"1: ldrexd %0, %H0, [%3]\n" 343"1: ldrexd %0, %H0, [%3]\n"
344" subs %0, %0, %4\n" 344" subs %Q0, %Q0, %Q4\n"
345" sbc %H0, %H0, %H4\n" 345" sbc %R0, %R0, %R4\n"
346" strexd %1, %0, %H0, [%3]\n" 346" strexd %1, %0, %H0, [%3]\n"
347" teq %1, #0\n" 347" teq %1, #0\n"
348" bne 1b" 348" bne 1b"
@@ -360,8 +360,8 @@ static inline u64 atomic64_sub_return(u64 i, atomic64_t *v)
360 360
361 __asm__ __volatile__("@ atomic64_sub_return\n" 361 __asm__ __volatile__("@ atomic64_sub_return\n"
362"1: ldrexd %0, %H0, [%3]\n" 362"1: ldrexd %0, %H0, [%3]\n"
363" subs %0, %0, %4\n" 363" subs %Q0, %Q0, %Q4\n"
364" sbc %H0, %H0, %H4\n" 364" sbc %R0, %R0, %R4\n"
365" strexd %1, %0, %H0, [%3]\n" 365" strexd %1, %0, %H0, [%3]\n"
366" teq %1, #0\n" 366" teq %1, #0\n"
367" bne 1b" 367" bne 1b"
@@ -428,9 +428,9 @@ static inline u64 atomic64_dec_if_positive(atomic64_t *v)
428 428
429 __asm__ __volatile__("@ atomic64_dec_if_positive\n" 429 __asm__ __volatile__("@ atomic64_dec_if_positive\n"
430"1: ldrexd %0, %H0, [%3]\n" 430"1: ldrexd %0, %H0, [%3]\n"
431" subs %0, %0, #1\n" 431" subs %Q0, %Q0, #1\n"
432" sbc %H0, %H0, #0\n" 432" sbc %R0, %R0, #0\n"
433" teq %H0, #0\n" 433" teq %R0, #0\n"
434" bmi 2f\n" 434" bmi 2f\n"
435" strexd %1, %0, %H0, [%3]\n" 435" strexd %1, %0, %H0, [%3]\n"
436" teq %1, #0\n" 436" teq %1, #0\n"
@@ -459,8 +459,8 @@ static inline int atomic64_add_unless(atomic64_t *v, u64 a, u64 u)
459" teqeq %H0, %H5\n" 459" teqeq %H0, %H5\n"
460" moveq %1, #0\n" 460" moveq %1, #0\n"
461" beq 2f\n" 461" beq 2f\n"
462" adds %0, %0, %6\n" 462" adds %Q0, %Q0, %Q6\n"
463" adc %H0, %H0, %H6\n" 463" adc %R0, %R0, %R6\n"
464" strexd %2, %0, %H0, [%4]\n" 464" strexd %2, %0, %H0, [%4]\n"
465" teq %2, #0\n" 465" teq %2, #0\n"
466" bne 1b\n" 466" bne 1b\n"