summaryrefslogtreecommitdiff
path: root/arch/arm/lib/io-writesw-armv4.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/lib/io-writesw-armv4.S')
-rw-r--r--arch/arm/lib/io-writesw-armv4.S5
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/arm/lib/io-writesw-armv4.S b/arch/arm/lib/io-writesw-armv4.S
index d6585612c86b..ff4f71b579ee 100644
--- a/arch/arm/lib/io-writesw-armv4.S
+++ b/arch/arm/lib/io-writesw-armv4.S
@@ -75,7 +75,10 @@ ENTRY(__raw_writesw)
#endif
.Loutsw_noalign:
- ldr r3, [r1, -r3]!
+ ARM( ldr r3, [r1, -r3]! )
+ THUMB( rsb r3, r3, #0 )
+ THUMB( ldr r3, [r1, r3] )
+ THUMB( sub r1, r3 )
subcs r2, r2, #1
bcs 2f
subs r2, r2, #2