mirror of https://gitee.com/openkylin/linux.git
ARM: 8829/1: spinlock: use unified assembler language syntax
Convert the conditional infix to a postfix to make sure this inline assembly is unified syntax. Since gcc assumes non-unified syntax when emitting ARM instructions, make sure to define the syntax as unified. This allows to use LLVM's integrated assembler. Signed-off-by: Stefan Agner <stefan@agner.ch> Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
This commit is contained in:
parent
32fdb046ac
commit
eb7ff9023e
|
@ -210,11 +210,12 @@ static inline void arch_read_lock(arch_rwlock_t *rw)
|
|||
|
||||
prefetchw(&rw->lock);
|
||||
__asm__ __volatile__(
|
||||
" .syntax unified\n"
|
||||
"1: ldrex %0, [%2]\n"
|
||||
" adds %0, %0, #1\n"
|
||||
" strexpl %1, %0, [%2]\n"
|
||||
WFE("mi")
|
||||
" rsbpls %0, %1, #0\n"
|
||||
" rsbspl %0, %1, #0\n"
|
||||
" bmi 1b"
|
||||
: "=&r" (tmp), "=&r" (tmp2)
|
||||
: "r" (&rw->lock)
|
||||
|
|
Loading…
Reference in New Issue