projects
/
GitHub
/
LineageOS
/
android_kernel_motorola_exynos9610.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
c396fe7
)
arm64: atomics: Remove '&' from '+&' asm constraint in lse atomics
author
Will Deacon
<will.deacon@arm.com>
Fri, 7 Jul 2017 16:01:50 +0000
(17:01 +0100)
committer
Will Deacon
<will.deacon@arm.com>
Thu, 20 Jul 2017 09:20:54 +0000
(10:20 +0100)
The lse implementation of atomic64_dec_if_positive uses the '+&' constraint,
but the '&' is redundant and confusing in this case, since early clobber
on a read/write operand is a strange concept.
Replace the constraint with '+'.
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/include/asm/atomic_lse.h
patch
|
blob
|
blame
|
history
diff --git
a/arch/arm64/include/asm/atomic_lse.h
b/arch/arm64/include/asm/atomic_lse.h
index 99fa69c9c3cf3ebf080c7443fb16ac6c11cf234a..9ef0797380cbbdf182a86e934c2eec5aa97d889d 100644
(file)
--- a/
arch/arm64/include/asm/atomic_lse.h
+++ b/
arch/arm64/include/asm/atomic_lse.h
@@
-435,7
+435,7
@@
static inline long atomic64_dec_if_positive(atomic64_t *v)
" sub x30, x30, %[ret]\n"
" cbnz x30, 1b\n"
"2:")
- : [ret] "+
&
r" (x0), [v] "+Q" (v->counter)
+ : [ret] "+r" (x0), [v] "+Q" (v->counter)
:
: __LL_SC_CLOBBERS, "cc", "memory");