summaryrefslogtreecommitdiffstats
path: root/arch/arm/lib/bitops.h
diff options
context:
space:
mode:
authorDave Martin <dave.martin@linaro.org>2011-02-08 12:09:52 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2011-02-19 17:07:21 +0100
commit3ba6e69ad887f8a814267ed36fd4bfbddf8855a9 (patch)
treeaff91a8e58d1b3ac83a8dd37e8a9f325961add2a /arch/arm/lib/bitops.h
parentARM: 6655/1: Correct WFE() in asm/spinlock.h for Thumb-2 (diff)
downloadlinux-3ba6e69ad887f8a814267ed36fd4bfbddf8855a9.tar.xz
linux-3ba6e69ad887f8a814267ed36fd4bfbddf8855a9.zip
ARM: 6653/1: bitops: Use BX instead of MOV PC,LR
The kernel doesn't officially need to interwork, but using BX wherever appropriate will help educate people into good assembler coding habits. BX is appropriate here because this code is predicated on __LINUX_ARM_ARCH__ >= 6 Signed-off-by: Dave Martin <dave.martin@linaro.org> Acked-by: Nicolas Pitre <nicolas.pitre@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/lib/bitops.h')
-rw-r--r--arch/arm/lib/bitops.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/arm/lib/bitops.h b/arch/arm/lib/bitops.h
index a9d9d152a751..10d868a5a481 100644
--- a/arch/arm/lib/bitops.h
+++ b/arch/arm/lib/bitops.h
@@ -12,7 +12,7 @@
strex r0, r2, [r1]
cmp r0, #0
bne 1b
- mov pc, lr
+ bx lr
.endm
.macro testop, instr, store
@@ -33,7 +33,7 @@
smp_dmb
cmp r0, #0
movne r0, #1
-2: mov pc, lr
+2: bx lr
.endm
#else
.macro bitop, instr