Commit d98b90ea authored by Victor Kamensky's avatar Victor Kamensky Committed by Russell King

ARM: 7990/1: asm: rename logical shift macros push pull into lspush lspull

Renames logical shift macros, 'push' and 'pull', defined in
arch/arm/include/asm/assembler.h, into 'lspush' and 'lspull'.
That eliminates name conflict between 'push' logical shift macro
and 'push' instruction mnemonic. That allows assembler.h to be
included in .S files that use 'push' instruction.
Suggested-by: default avatarWill Deacon <will.deacon@arm.com>
Signed-off-by: default avatarVictor Kamensky <victor.kamensky@linaro.org>
Acked-by: default avatarNicolas Pitre <nico@linaro.org>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 74c4137b
...@@ -30,8 +30,8 @@ ...@@ -30,8 +30,8 @@
* Endian independent macros for shifting bytes within registers. * Endian independent macros for shifting bytes within registers.
*/ */
#ifndef __ARMEB__ #ifndef __ARMEB__
#define pull lsr #define lspull lsr
#define push lsl #define lspush lsl
#define get_byte_0 lsl #0 #define get_byte_0 lsl #0
#define get_byte_1 lsr #8 #define get_byte_1 lsr #8
#define get_byte_2 lsr #16 #define get_byte_2 lsr #16
...@@ -41,8 +41,8 @@ ...@@ -41,8 +41,8 @@
#define put_byte_2 lsl #16 #define put_byte_2 lsl #16
#define put_byte_3 lsl #24 #define put_byte_3 lsl #24
#else #else
#define pull lsl #define lspull lsl
#define push lsr #define lspush lsr
#define get_byte_0 lsr #24 #define get_byte_0 lsr #24
#define get_byte_1 lsr #16 #define get_byte_1 lsr #16
#define get_byte_2 lsr #8 #define get_byte_2 lsr #8
......
...@@ -197,24 +197,24 @@ ...@@ -197,24 +197,24 @@
12: PLD( pld [r1, #124] ) 12: PLD( pld [r1, #124] )
13: ldr4w r1, r4, r5, r6, r7, abort=19f 13: ldr4w r1, r4, r5, r6, r7, abort=19f
mov r3, lr, pull #\pull mov r3, lr, lspull #\pull
subs r2, r2, #32 subs r2, r2, #32
ldr4w r1, r8, r9, ip, lr, abort=19f ldr4w r1, r8, r9, ip, lr, abort=19f
orr r3, r3, r4, push #\push orr r3, r3, r4, lspush #\push
mov r4, r4, pull #\pull mov r4, r4, lspull #\pull
orr r4, r4, r5, push #\push orr r4, r4, r5, lspush #\push
mov r5, r5, pull #\pull mov r5, r5, lspull #\pull
orr r5, r5, r6, push #\push orr r5, r5, r6, lspush #\push
mov r6, r6, pull #\pull mov r6, r6, lspull #\pull
orr r6, r6, r7, push #\push orr r6, r6, r7, lspush #\push
mov r7, r7, pull #\pull mov r7, r7, lspull #\pull
orr r7, r7, r8, push #\push orr r7, r7, r8, lspush #\push
mov r8, r8, pull #\pull mov r8, r8, lspull #\pull
orr r8, r8, r9, push #\push orr r8, r8, r9, lspush #\push
mov r9, r9, pull #\pull mov r9, r9, lspull #\pull
orr r9, r9, ip, push #\push orr r9, r9, ip, lspush #\push
mov ip, ip, pull #\pull mov ip, ip, lspull #\pull
orr ip, ip, lr, push #\push orr ip, ip, lr, lspush #\push
str8w r0, r3, r4, r5, r6, r7, r8, r9, ip, , abort=19f str8w r0, r3, r4, r5, r6, r7, r8, r9, ip, , abort=19f
bge 12b bge 12b
PLD( cmn r2, #96 ) PLD( cmn r2, #96 )
...@@ -225,10 +225,10 @@ ...@@ -225,10 +225,10 @@
14: ands ip, r2, #28 14: ands ip, r2, #28
beq 16f beq 16f
15: mov r3, lr, pull #\pull 15: mov r3, lr, lspull #\pull
ldr1w r1, lr, abort=21f ldr1w r1, lr, abort=21f
subs ip, ip, #4 subs ip, ip, #4
orr r3, r3, lr, push #\push orr r3, r3, lr, lspush #\push
str1w r0, r3, abort=21f str1w r0, r3, abort=21f
bgt 15b bgt 15b
CALGN( cmp r2, #0 ) CALGN( cmp r2, #0 )
......
...@@ -141,7 +141,7 @@ FN_ENTRY ...@@ -141,7 +141,7 @@ FN_ENTRY
tst len, #2 tst len, #2
mov r5, r4, get_byte_0 mov r5, r4, get_byte_0
beq .Lexit beq .Lexit
adcs sum, sum, r4, push #16 adcs sum, sum, r4, lspush #16
strb r5, [dst], #1 strb r5, [dst], #1
mov r5, r4, get_byte_1 mov r5, r4, get_byte_1
strb r5, [dst], #1 strb r5, [dst], #1
...@@ -171,23 +171,23 @@ FN_ENTRY ...@@ -171,23 +171,23 @@ FN_ENTRY
cmp ip, #2 cmp ip, #2
beq .Lsrc2_aligned beq .Lsrc2_aligned
bhi .Lsrc3_aligned bhi .Lsrc3_aligned
mov r4, r5, pull #8 @ C = 0 mov r4, r5, lspull #8 @ C = 0
bics ip, len, #15 bics ip, len, #15
beq 2f beq 2f
1: load4l r5, r6, r7, r8 1: load4l r5, r6, r7, r8
orr r4, r4, r5, push #24 orr r4, r4, r5, lspush #24
mov r5, r5, pull #8 mov r5, r5, lspull #8
orr r5, r5, r6, push #24 orr r5, r5, r6, lspush #24
mov r6, r6, pull #8 mov r6, r6, lspull #8
orr r6, r6, r7, push #24 orr r6, r6, r7, lspush #24
mov r7, r7, pull #8 mov r7, r7, lspull #8
orr r7, r7, r8, push #24 orr r7, r7, r8, lspush #24
stmia dst!, {r4, r5, r6, r7} stmia dst!, {r4, r5, r6, r7}
adcs sum, sum, r4 adcs sum, sum, r4
adcs sum, sum, r5 adcs sum, sum, r5
adcs sum, sum, r6 adcs sum, sum, r6
adcs sum, sum, r7 adcs sum, sum, r7
mov r4, r8, pull #8 mov r4, r8, lspull #8
sub ip, ip, #16 sub ip, ip, #16
teq ip, #0 teq ip, #0
bne 1b bne 1b
...@@ -196,50 +196,50 @@ FN_ENTRY ...@@ -196,50 +196,50 @@ FN_ENTRY
tst ip, #8 tst ip, #8
beq 3f beq 3f
load2l r5, r6 load2l r5, r6
orr r4, r4, r5, push #24 orr r4, r4, r5, lspush #24
mov r5, r5, pull #8 mov r5, r5, lspull #8
orr r5, r5, r6, push #24 orr r5, r5, r6, lspush #24
stmia dst!, {r4, r5} stmia dst!, {r4, r5}
adcs sum, sum, r4 adcs sum, sum, r4
adcs sum, sum, r5 adcs sum, sum, r5
mov r4, r6, pull #8 mov r4, r6, lspull #8
tst ip, #4 tst ip, #4
beq 4f beq 4f
3: load1l r5 3: load1l r5
orr r4, r4, r5, push #24 orr r4, r4, r5, lspush #24
str r4, [dst], #4 str r4, [dst], #4
adcs sum, sum, r4 adcs sum, sum, r4
mov r4, r5, pull #8 mov r4, r5, lspull #8
4: ands len, len, #3 4: ands len, len, #3
beq .Ldone beq .Ldone
mov r5, r4, get_byte_0 mov r5, r4, get_byte_0
tst len, #2 tst len, #2
beq .Lexit beq .Lexit
adcs sum, sum, r4, push #16 adcs sum, sum, r4, lspush #16
strb r5, [dst], #1 strb r5, [dst], #1
mov r5, r4, get_byte_1 mov r5, r4, get_byte_1
strb r5, [dst], #1 strb r5, [dst], #1
mov r5, r4, get_byte_2 mov r5, r4, get_byte_2
b .Lexit b .Lexit
.Lsrc2_aligned: mov r4, r5, pull #16 .Lsrc2_aligned: mov r4, r5, lspull #16
adds sum, sum, #0 adds sum, sum, #0
bics ip, len, #15 bics ip, len, #15
beq 2f beq 2f
1: load4l r5, r6, r7, r8 1: load4l r5, r6, r7, r8
orr r4, r4, r5, push #16 orr r4, r4, r5, lspush #16
mov r5, r5, pull #16 mov r5, r5, lspull #16
orr r5, r5, r6, push #16 orr r5, r5, r6, lspush #16
mov r6, r6, pull #16 mov r6, r6, lspull #16
orr r6, r6, r7, push #16 orr r6, r6, r7, lspush #16
mov r7, r7, pull #16 mov r7, r7, lspull #16
orr r7, r7, r8, push #16 orr r7, r7, r8, lspush #16
stmia dst!, {r4, r5, r6, r7} stmia dst!, {r4, r5, r6, r7}
adcs sum, sum, r4 adcs sum, sum, r4
adcs sum, sum, r5 adcs sum, sum, r5
adcs sum, sum, r6 adcs sum, sum, r6
adcs sum, sum, r7 adcs sum, sum, r7
mov r4, r8, pull #16 mov r4, r8, lspull #16
sub ip, ip, #16 sub ip, ip, #16
teq ip, #0 teq ip, #0
bne 1b bne 1b
...@@ -248,20 +248,20 @@ FN_ENTRY ...@@ -248,20 +248,20 @@ FN_ENTRY
tst ip, #8 tst ip, #8
beq 3f beq 3f
load2l r5, r6 load2l r5, r6
orr r4, r4, r5, push #16 orr r4, r4, r5, lspush #16
mov r5, r5, pull #16 mov r5, r5, lspull #16
orr r5, r5, r6, push #16 orr r5, r5, r6, lspush #16
stmia dst!, {r4, r5} stmia dst!, {r4, r5}
adcs sum, sum, r4 adcs sum, sum, r4
adcs sum, sum, r5 adcs sum, sum, r5
mov r4, r6, pull #16 mov r4, r6, lspull #16
tst ip, #4 tst ip, #4
beq 4f beq 4f
3: load1l r5 3: load1l r5
orr r4, r4, r5, push #16 orr r4, r4, r5, lspush #16
str r4, [dst], #4 str r4, [dst], #4
adcs sum, sum, r4 adcs sum, sum, r4
mov r4, r5, pull #16 mov r4, r5, lspull #16
4: ands len, len, #3 4: ands len, len, #3
beq .Ldone beq .Ldone
mov r5, r4, get_byte_0 mov r5, r4, get_byte_0
...@@ -276,24 +276,24 @@ FN_ENTRY ...@@ -276,24 +276,24 @@ FN_ENTRY
load1b r5 load1b r5
b .Lexit b .Lexit
.Lsrc3_aligned: mov r4, r5, pull #24 .Lsrc3_aligned: mov r4, r5, lspull #24
adds sum, sum, #0 adds sum, sum, #0
bics ip, len, #15 bics ip, len, #15
beq 2f beq 2f
1: load4l r5, r6, r7, r8 1: load4l r5, r6, r7, r8
orr r4, r4, r5, push #8 orr r4, r4, r5, lspush #8
mov r5, r5, pull #24 mov r5, r5, lspull #24
orr r5, r5, r6, push #8 orr r5, r5, r6, lspush #8
mov r6, r6, pull #24 mov r6, r6, lspull #24
orr r6, r6, r7, push #8 orr r6, r6, r7, lspush #8
mov r7, r7, pull #24 mov r7, r7, lspull #24
orr r7, r7, r8, push #8 orr r7, r7, r8, lspush #8
stmia dst!, {r4, r5, r6, r7} stmia dst!, {r4, r5, r6, r7}
adcs sum, sum, r4 adcs sum, sum, r4
adcs sum, sum, r5 adcs sum, sum, r5
adcs sum, sum, r6 adcs sum, sum, r6
adcs sum, sum, r7 adcs sum, sum, r7
mov r4, r8, pull #24 mov r4, r8, lspull #24
sub ip, ip, #16 sub ip, ip, #16
teq ip, #0 teq ip, #0
bne 1b bne 1b
...@@ -302,20 +302,20 @@ FN_ENTRY ...@@ -302,20 +302,20 @@ FN_ENTRY
tst ip, #8 tst ip, #8
beq 3f beq 3f
load2l r5, r6 load2l r5, r6
orr r4, r4, r5, push #8 orr r4, r4, r5, lspush #8
mov r5, r5, pull #24 mov r5, r5, lspull #24
orr r5, r5, r6, push #8 orr r5, r5, r6, lspush #8
stmia dst!, {r4, r5} stmia dst!, {r4, r5}
adcs sum, sum, r4 adcs sum, sum, r4
adcs sum, sum, r5 adcs sum, sum, r5
mov r4, r6, pull #24 mov r4, r6, lspull #24
tst ip, #4 tst ip, #4
beq 4f beq 4f
3: load1l r5 3: load1l r5
orr r4, r4, r5, push #8 orr r4, r4, r5, lspush #8
str r4, [dst], #4 str r4, [dst], #4
adcs sum, sum, r4 adcs sum, sum, r4
mov r4, r5, pull #24 mov r4, r5, lspull #24
4: ands len, len, #3 4: ands len, len, #3
beq .Ldone beq .Ldone
mov r5, r4, get_byte_0 mov r5, r4, get_byte_0
...@@ -326,7 +326,7 @@ FN_ENTRY ...@@ -326,7 +326,7 @@ FN_ENTRY
load1l r4 load1l r4
mov r5, r4, get_byte_0 mov r5, r4, get_byte_0
strb r5, [dst], #1 strb r5, [dst], #1
adcs sum, sum, r4, push #24 adcs sum, sum, r4, lspush #24
mov r5, r4, get_byte_1 mov r5, r4, get_byte_1
b .Lexit b .Lexit
FN_EXIT FN_EXIT
...@@ -47,25 +47,25 @@ ENTRY(__raw_readsl) ...@@ -47,25 +47,25 @@ ENTRY(__raw_readsl)
strb ip, [r1], #1 strb ip, [r1], #1
4: subs r2, r2, #1 4: subs r2, r2, #1
mov ip, r3, pull #24 mov ip, r3, lspull #24
ldrne r3, [r0] ldrne r3, [r0]
orrne ip, ip, r3, push #8 orrne ip, ip, r3, lspush #8
strne ip, [r1], #4 strne ip, [r1], #4
bne 4b bne 4b
b 8f b 8f
5: subs r2, r2, #1 5: subs r2, r2, #1
mov ip, r3, pull #16 mov ip, r3, lspull #16
ldrne r3, [r0] ldrne r3, [r0]
orrne ip, ip, r3, push #16 orrne ip, ip, r3, lspush #16
strne ip, [r1], #4 strne ip, [r1], #4
bne 5b bne 5b
b 7f b 7f
6: subs r2, r2, #1 6: subs r2, r2, #1
mov ip, r3, pull #8 mov ip, r3, lspull #8
ldrne r3, [r0] ldrne r3, [r0]
orrne ip, ip, r3, push #24 orrne ip, ip, r3, lspush #24
strne ip, [r1], #4 strne ip, [r1], #4
bne 6b bne 6b
......
...@@ -41,26 +41,26 @@ ENTRY(__raw_writesl) ...@@ -41,26 +41,26 @@ ENTRY(__raw_writesl)
blt 5f blt 5f
bgt 6f bgt 6f
4: mov ip, r3, pull #16 4: mov ip, r3, lspull #16
ldr r3, [r1], #4 ldr r3, [r1], #4
subs r2, r2, #1 subs r2, r2, #1
orr ip, ip, r3, push #16 orr ip, ip, r3, lspush #16
str ip, [r0] str ip, [r0]
bne 4b bne 4b
mov pc, lr mov pc, lr
5: mov ip, r3, pull #8 5: mov ip, r3, lspull #8
ldr r3, [r1], #4 ldr r3, [r1], #4
subs r2, r2, #1 subs r2, r2, #1
orr ip, ip, r3, push #24 orr ip, ip, r3, lspush #24
str ip, [r0] str ip, [r0]
bne 5b bne 5b
mov pc, lr mov pc, lr
6: mov ip, r3, pull #24 6: mov ip, r3, lspull #24
ldr r3, [r1], #4 ldr r3, [r1], #4
subs r2, r2, #1 subs r2, r2, #1
orr ip, ip, r3, push #8 orr ip, ip, r3, lspush #8
str ip, [r0] str ip, [r0]
bne 6b bne 6b
mov pc, lr mov pc, lr
......
...@@ -147,24 +147,24 @@ ENTRY(memmove) ...@@ -147,24 +147,24 @@ ENTRY(memmove)
12: PLD( pld [r1, #-128] ) 12: PLD( pld [r1, #-128] )
13: ldmdb r1!, {r7, r8, r9, ip} 13: ldmdb r1!, {r7, r8, r9, ip}
mov lr, r3, push #\push mov lr, r3, lspush #\push
subs r2, r2, #32 subs r2, r2, #32
ldmdb r1!, {r3, r4, r5, r6} ldmdb r1!, {r3, r4, r5, r6}
orr lr, lr, ip, pull #\pull orr lr, lr, ip, lspull #\pull
mov ip, ip, push #\push mov ip, ip, lspush #\push
orr ip, ip, r9, pull #\pull orr ip, ip, r9, lspull #\pull
mov r9, r9, push #\push mov r9, r9, lspush #\push
orr r9, r9, r8, pull #\pull orr r9, r9, r8, lspull #\pull
mov r8, r8, push #\push mov r8, r8, lspush #\push
orr r8, r8, r7, pull #\pull orr r8, r8, r7, lspull #\pull
mov r7, r7, push #\push mov r7, r7, lspush #\push
orr r7, r7, r6, pull #\pull orr r7, r7, r6, lspull #\pull
mov r6, r6, push #\push mov r6, r6, lspush #\push
orr r6, r6, r5, pull #\pull orr r6, r6, r5, lspull #\pull
mov r5, r5, push #\push mov r5, r5, lspush #\push
orr r5, r5, r4, pull #\pull orr r5, r5, r4, lspull #\pull
mov r4, r4, push #\push mov r4, r4, lspush #\push
orr r4, r4, r3, pull #\pull orr r4, r4, r3, lspull #\pull
stmdb r0!, {r4 - r9, ip, lr} stmdb r0!, {r4 - r9, ip, lr}
bge 12b bge 12b
PLD( cmn r2, #96 ) PLD( cmn r2, #96 )
...@@ -175,10 +175,10 @@ ENTRY(memmove) ...@@ -175,10 +175,10 @@ ENTRY(memmove)
14: ands ip, r2, #28 14: ands ip, r2, #28
beq 16f beq 16f
15: mov lr, r3, push #\push 15: mov lr, r3, lspush #\push
ldr r3, [r1, #-4]! ldr r3, [r1, #-4]!
subs ip, ip, #4 subs ip, ip, #4
orr lr, lr, r3, pull #\pull orr lr, lr, r3, lspull #\pull
str lr, [r0, #-4]! str lr, [r0, #-4]!
bgt 15b bgt 15b
CALGN( cmp r2, #0 ) CALGN( cmp r2, #0 )
......
...@@ -117,9 +117,9 @@ USER( TUSER( strgtb) r3, [r0], #1) @ May fault ...@@ -117,9 +117,9 @@ USER( TUSER( strgtb) r3, [r0], #1) @ May fault
.Lc2u_1fupi: subs r2, r2, #4 .Lc2u_1fupi: subs r2, r2, #4
addmi ip, r2, #4 addmi ip, r2, #4
bmi .Lc2u_1nowords bmi .Lc2u_1nowords
mov r3, r7, pull #8 mov r3, r7, lspull #8
ldr r7, [r1], #4 ldr r7, [r1], #4
orr r3, r3, r7, push #24 orr r3, r3, r7, lspush #24
USER( TUSER( str) r3, [r0], #4) @ May fault USER( TUSER( str) r3, [r0], #4) @ May fault
mov ip, r0, lsl #32 - PAGE_SHIFT mov ip, r0, lsl #32 - PAGE_SHIFT
rsb ip, ip, #0 rsb ip, ip, #0
...@@ -131,30 +131,30 @@ USER( TUSER( str) r3, [r0], #4) @ May fault ...@@ -131,30 +131,30 @@ USER( TUSER( str) r3, [r0], #4) @ May fault
subs ip, ip, #16 subs ip, ip, #16
blt .Lc2u_1rem8lp blt .Lc2u_1rem8lp
.Lc2u_1cpy8lp: mov r3, r7, pull #8 .Lc2u_1cpy8lp: mov r3, r7, lspull #8
ldmia r1!, {r4 - r7} ldmia r1!, {r4 - r7}
subs ip, ip, #16 subs ip, ip, #16
orr r3, r3, r4, push #24 orr r3, r3, r4, lspush #24
mov r4, r4, pull #8 mov r4, r4, lspull #8
orr r4, r4, r5, push #24 orr r4, r4, r5, lspush #24
mov r5, r5, pull #8 mov r5, r5, lspull #8
orr r5, r5, r6, push #24 orr r5, r5, r6, lspush #24
mov r6, r6, pull #8 mov r6, r6, lspull #8
orr r6, r6, r7, push #24 orr r6, r6, r7, lspush #24
stmia r0!, {r3 - r6} @ Shouldnt fault stmia r0!, {r3 - r6} @ Shouldnt fault
bpl .Lc2u_1cpy8lp bpl .Lc2u_1cpy8lp
.Lc2u_1rem8lp: tst ip, #8 .Lc2u_1rem8lp: tst ip, #8
movne r3, r7, pull #8 movne r3, r7, lspull #8
ldmneia r1!, {r4, r7} ldmneia r1!, {r4, r7}
orrne r3, r3, r4, push #24 orrne r3, r3, r4, lspush #24
movne r4, r4, pull #8 movne r4, r4, lspull #8
orrne r4, r4, r7, push #24 orrne r4, r4, r7, lspush #24
stmneia r0!, {r3 - r4} @ Shouldnt fault stmneia r0!, {r3 - r4} @ Shouldnt fault
tst ip, #4 tst ip, #4
movne r3, r7, pull #8 movne r3, r7, lspull #8
ldrne r7, [r1], #4 ldrne r7, [r1], #4
orrne r3, r3, r7, push #24 orrne r3, r3, r7, lspush #24
TUSER( strne) r3, [r0], #4 @ Shouldnt fault TUSER( strne) r3, [r0], #4 @ Shouldnt fault
ands ip, ip, #3 ands ip, ip, #3
beq .Lc2u_1fupi beq .Lc2u_1fupi
...@@ -172,9 +172,9 @@ USER( TUSER( strgtb) r3, [r0], #1) @ May fault ...@@ -172,9 +172,9 @@ USER( TUSER( strgtb) r3, [r0], #1) @ May fault
.Lc2u_2fupi: subs r2, r2, #4 .Lc2u_2fupi: subs r2, r2, #4
addmi ip, r2, #4 addmi ip, r2, #4
bmi .Lc2u_2nowords bmi .Lc2u_2nowords
mov r3, r7, pull #16 mov r3, r7, lspull #16
ldr r7, [r1], #4 ldr r7, [r1], #4
orr r3, r3, r7, push #16 orr r3, r3, r7, lspush #16
USER( TUSER( str) r3, [r0], #4) @ May fault USER( TUSER( str) r3, [r0], #4) @ May fault
mov ip, r0, lsl #32 - PAGE_SHIFT mov ip, r0, lsl #32 - PAGE_SHIFT
rsb ip, ip, #0 rsb ip, ip, #0
...@@ -186,30 +186,30 @@ USER( TUSER( str) r3, [r0], #4) @ May fault ...@@ -186,30 +186,30 @@ USER( TUSER( str) r3, [r0], #4) @ May fault
subs ip, ip, #16 subs ip, ip, #16
blt .Lc2u_2rem8lp blt .Lc2u_2rem8lp
.Lc2u_2cpy8lp: mov r3, r7, pull #16 .Lc2u_2cpy8lp: mov r3, r7, lspull #16
ldmia r1!, {r4 - r7} ldmia r1!, {r4 - r7}
subs ip, ip, #16 subs ip, ip, #16
orr r3, r3, r4, push #16 orr r3, r3, r4, lspush #16
mov r4, r4, pull #16 mov r4, r4, lspull #16
orr r4, r4, r5, push #16 orr r4, r4, r5, lspush #16
mov r5, r5, pull #16 mov r5, r5, lspull #16
orr r5, r5, r6, push #16 orr r5, r5, r6, lspush #16
mov r6, r6, pull #16 mov r6, r6, lspull #16
orr r6, r6, r7, push #16 orr r6, r6, r7, lspush #16
stmia r0!, {r3 - r6} @ Shouldnt fault stmia r0!, {r3 - r6} @ Shouldnt fault
bpl .Lc2u_2cpy8lp bpl .Lc2u_2cpy8lp
.Lc2u_2rem8lp: tst ip, #8 .Lc2u_2rem8lp: tst ip, #8
movne r3, r7, pull #16 movne r3, r7, lspull #16
ldmneia r1!, {r4, r7} ldmneia r1!, {r4, r7}
orrne r3, r3, r4, push #16 orrne r3, r3, r4, lspush #16
movne r4, r4, pull #16 movne r4, r4, lspull #16
orrne r4, r4, r7, push #16 orrne r4, r4, r7, lspush #16
stmneia r0!, {r3 - r4} @ Shouldnt fault stmneia r0!, {r3 - r4} @ Shouldnt fault
tst ip, #4 tst ip, #4
movne r3, r7, pull #16 movne r3, r7, lspull #16
ldrne r7, [r1], #4 ldrne r7, [r1], #4
orrne r3, r3, r7, push #16 orrne r3, r3, r7, lspush #16
TUSER( strne) r3, [r0], #4 @ Shouldnt fault TUSER( strne) r3, [r0], #4 @ Shouldnt fault
ands ip, ip, #3 ands ip, ip, #3
beq .Lc2u_2fupi beq .Lc2u_2fupi
...@@ -227,9 +227,9 @@ USER( TUSER( strgtb) r3, [r0], #1) @ May fault ...@@ -227,9 +227,9 @@ USER( TUSER( strgtb) r3, [r0], #1) @ May fault
.Lc2u_3fupi: subs r2, r2, #4 .Lc2u_3fupi: subs r2, r2, #4
addmi ip, r2, #4 addmi ip, r2, #4
bmi .Lc2u_3nowords bmi .Lc2u_3nowords
mov r3, r7, pull #24 mov r3, r7, lspull #24
ldr r7, [r1], #4 ldr r7, [r1], #4
orr r3, r3, r7, push #8 orr r3, r3, r7, lspush #8
USER( TUSER( str) r3, [r0], #4) @ May fault USER( TUSER( str) r3, [r0], #4) @ May fault
mov ip, r0, lsl #32 - PAGE_SHIFT mov ip, r0, lsl #32 - PAGE_SHIFT
rsb ip, ip, #0 rsb ip, ip, #0
...@@ -241,30 +241,30 @@ USER( TUSER( str) r3, [r0], #4) @ May fault ...@@ -241,30 +241,30 @@ USER( TUSER( str) r3, [r0], #4) @ May fault
subs ip, ip, #16 subs ip, ip, #16
blt .Lc2u_3rem8lp blt .Lc2u_3rem8lp
.Lc2u_3cpy8lp: mov r3, r7, pull #24 .Lc2u_3cpy8lp: mov r3, r7, lspull #24
ldmia r1!, {r4 - r7} ldmia r1!, {r4 - r7}
subs ip, ip, #16 subs ip, ip, #16
orr r3, r3, r4, push #8 orr r3, r3, r4, lspush #8
mov r4, r4, pull #24 mov r4, r4, lspull #24
orr r4, r4, r5, push #8 orr r4, r4, r5, lspush #8
mov r5, r5, pull #24 mov r5, r5, lspull #24
orr r5, r5, r6, push #8 orr r5, r5, r6, lspush #8
mov r6, r6, pull #24 mov r6, r6, lspull #24
orr r6, r6, r7, push #8 orr r6, r6, r7, lspush #8
stmia r0!, {r3 - r6} @ Shouldnt fault stmia r0!, {r3 - r6} @ Shouldnt fault
bpl .Lc2u_3cpy8lp bpl .Lc2u_3cpy8lp
.Lc2u_3rem8lp: tst ip, #8 .Lc2u_3rem8lp: tst ip, #8
movne r3, r7, pull #24 movne r3, r7, lspull #24
ldmneia r1!, {r4, r7} ldmneia r1!, {r4, r7}
orrne r3, r3, r4, push #8 orrne r3, r3, r4, lspush #8
movne r4, r4, pull #24 movne r4, r4, lspull #24
orrne r4, r4, r7, push #8 orrne r4, r4, r7, lspush #8
stmneia r0!, {r3 - r4} @ Shouldnt fault stmneia r0!, {r3 - r4} @ Shouldnt fault
tst ip, #4 tst ip, #4
movne r3, r7, pull #24 movne r3, r7, lspull #24
ldrne r7, [r1], #4 ldrne r7, [r1], #4
orrne r3, r3, r7, push #8 orrne r3, r3, r7, lspush #8
TUSER( strne) r3, [r0], #4 @ Shouldnt fault TUSER( strne) r3, [r0], #4 @ Shouldnt fault
ands ip, ip, #3 ands ip, ip, #3
beq .Lc2u_3fupi beq .Lc2u_3fupi
...@@ -382,9 +382,9 @@ USER( TUSER( ldr) r7, [r1], #4) @ May fault ...@@ -382,9 +382,9 @@ USER( TUSER( ldr) r7, [r1], #4) @ May fault
.Lcfu_1fupi: subs r2, r2, #4 .Lcfu_1fupi: subs r2, r2, #4
addmi ip, r2, #4 addmi ip, r2, #4
bmi .Lcfu_1nowords bmi .Lcfu_1nowords
mov r3, r7, pull #8 mov r3, r7, lspull #8
USER( TUSER( ldr) r7, [r1], #4) @ May fault USER( TUSER( ldr) r7, [r1], #4) @ May fault
orr r3, r3, r7, push #24 orr r3, r3, r7, lspush #24
str r3, [r0], #4 str r3, [r0], #4
mov ip, r1, lsl #32 - PAGE_SHIFT mov ip, r1, lsl #32 - PAGE_SHIFT
rsb ip, ip, #0 rsb ip, ip, #0
...@@ -396,30 +396,30 @@ USER( TUSER( ldr) r7, [r1], #4) @ May fault ...@@ -396,30 +396,30 @@ USER( TUSER( ldr) r7, [r1], #4) @ May fault
subs ip, ip, #16 subs ip, ip, #16
blt .Lcfu_1rem8lp blt .Lcfu_1rem8lp
.Lcfu_1cpy8lp: mov r3, r7, pull #8 .Lcfu_1cpy8lp: mov r3, r7, lspull #8
ldmia r1!, {r4 - r7} @ Shouldnt fault ldmia r1!, {r4 - r7} @ Shouldnt fault
subs ip, ip, #16 subs ip, ip, #16
orr r3, r3, r4, push #24 orr r3, r3, r4, lspush #24
mov r4, r4, pull #8 mov r4, r4, lspull #8
orr r4, r4, r5, push #24 orr r4, r4, r5, lspush #24
mov r5, r5, pull #8 mov r5, r5, lspull #8
orr r5, r5, r6, push #24 orr r5, r5, r6, lspush #24
mov r6, r6, pull #8 mov r6, r6, lspull #8
orr r6, r6, r7, push #24 orr r6, r6, r7, lspush #24
stmia r0!, {r3 - r6} stmia r0!, {r3 - r6}
bpl .Lcfu_1cpy8lp bpl .Lcfu_1cpy8lp
.Lcfu_1rem8lp: tst ip, #8 .Lcfu_1rem8lp: tst ip, #8
movne r3, r7, pull #8 movne r3, r7, lspull #8
ldmneia r1!, {r4, r7} @ Shouldnt fault ldmneia r1!, {r4, r7} @ Shouldnt fault
orrne r3, r3, r4, push #24 orrne r3, r3, r4, lspush #24
movne r4, r4, pull #8 movne r4, r4, lspull #8
orrne r4, r4, r7, push #24 orrne r4, r4, r7, lspush #24
stmneia r0!, {r3 - r4} stmneia r0!, {r3 - r4}
tst ip, #4 tst ip, #4
movne r3, r7, pull #8 movne r3, r7, lspull #8
USER( TUSER( ldrne) r7, [r1], #4) @ May fault USER( TUSER( ldrne) r7, [r1], #4) @ May fault
orrne r3, r3, r7, push #24 orrne r3, r3, r7, lspush #24
strne r3, [r0], #4 strne r3, [r0], #4
ands ip, ip, #3 ands ip, ip, #3
beq .Lcfu_1fupi beq .Lcfu_1fupi
...@@ -437,9 +437,9 @@ USER( TUSER( ldrne) r7, [r1], #4) @ May fault ...@@ -437,9 +437,9 @@ USER( TUSER( ldrne) r7, [r1], #4) @ May fault
.Lcfu_2fupi: subs r2, r2, #4 .Lcfu_2fupi: subs r2, r2, #4
addmi ip, r2, #4 addmi ip, r2, #4
bmi .Lcfu_2nowords bmi .Lcfu_2nowords
mov r3, r7, pull #16 mov r3, r7, lspull #16
USER( TUSER( ldr) r7, [r1], #4) @ May fault USER( TUSER( ldr) r7, [r1], #4) @ May fault
orr r3, r3, r7, push #16 orr r3, r3, r7, lspush #16
str r3, [r0], #4 str r3, [r0], #4
mov ip, r1, lsl #32 - PAGE_SHIFT mov ip, r1, lsl #32 - PAGE_SHIFT
rsb ip, ip, #0 rsb ip, ip, #0
...@@ -452,30 +452,30 @@ USER( TUSER( ldr) r7, [r1], #4) @ May fault ...@@ -452,30 +452,30 @@ USER( TUSER( ldr) r7, [r1], #4) @ May fault
blt .Lcfu_2rem8lp blt .Lcfu_2rem8lp
.Lcfu_2cpy8lp: mov r3, r7, pull #16 .Lcfu_2cpy8lp: mov r3, r7, lspull #16
ldmia r1!, {r4 - r7} @ Shouldnt fault ldmia r1!, {r4 - r7} @ Shouldnt fault
subs ip, ip, #16 subs ip, ip, #16
orr r3, r3, r4, push #16 orr r3, r3, r4, lspush #16
mov r4, r4, pull #16 mov r4, r4, lspull #16
orr r4, r4, r5, push #16 orr r4, r4, r5, lspush #16
mov r5, r5, pull #16 mov r5, r5, lspull #16
orr r5, r5, r6, push #16 orr r5, r5, r6, lspush #16
mov r6, r6, pull #16 mov r6, r6, lspull #16
orr r6, r6, r7, push #16 orr r6, r6, r7, lspush #16
stmia r0!, {r3 - r6} stmia r0!, {r3 - r6}
bpl .Lcfu_2cpy8lp bpl .Lcfu_2cpy8lp
.Lcfu_2rem8lp: tst ip, #8 .Lcfu_2rem8lp: tst ip, #8
movne r3, r7, pull #16 movne r3, r7, lspull #16
ldmneia r1!, {r4, r7} @ Shouldnt fault ldmneia r1!, {r4, r7} @ Shouldnt fault
orrne r3, r3, r4, push #16 orrne r3, r3, r4, lspush #16
movne r4, r4, pull #16 movne r4, r4, lspull #16
orrne r4, r4, r7, push #16 orrne r4, r4, r7, lspush #16
stmneia r0!, {r3 - r4} stmneia r0!, {r3 - r4}
tst ip, #4 tst ip, #4
movne r3, r7, pull #16 movne r3, r7, lspull #16
USER( TUSER( ldrne) r7, [r1], #4) @ May fault USER( TUSER( ldrne) r7, [r1], #4) @ May fault
orrne r3, r3, r7, push #16 orrne r3, r3, r7, lspush #16
strne r3, [r0], #4 strne r3, [r0], #4
ands ip, ip, #3 ands ip, ip, #3
beq .Lcfu_2fupi beq .Lcfu_2fupi
...@@ -493,9 +493,9 @@ USER( TUSER( ldrgtb) r3, [r1], #0) @ May fault ...@@ -493,9 +493,9 @@ USER( TUSER( ldrgtb) r3, [r1], #0) @ May fault
.Lcfu_3fupi: subs r2, r2, #4 .Lcfu_3fupi: subs r2, r2, #4
addmi ip, r2, #4 addmi ip, r2, #4
bmi .Lcfu_3nowords bmi .Lcfu_3nowords
mov r3, r7, pull #24 mov r3, r7, lspull #24
USER( TUSER( ldr) r7, [r1], #4) @ May fault USER( TUSER( ldr) r7, [r1], #4) @ May fault
orr r3, r3, r7, push #8 orr r3, r3, r7, lspush #8
str r3, [r0], #4 str r3, [r0], #4
mov ip, r1, lsl #32 - PAGE_SHIFT mov ip, r1, lsl #32 - PAGE_SHIFT
rsb ip, ip, #0 rsb ip, ip, #0
...@@ -507,30 +507,30 @@ USER( TUSER( ldr) r7, [r1], #4) @ May fault ...@@ -507,30 +507,30 @@ USER( TUSER( ldr) r7, [r1], #4) @ May fault
subs ip, ip, #16 subs ip, ip, #16
blt .Lcfu_3rem8lp blt .Lcfu_3rem8lp
.Lcfu_3cpy8lp: mov r3, r7, pull #24 .Lcfu_3cpy8lp: mov r3, r7, lspull #24
ldmia r1!, {r4 - r7} @ Shouldnt fault ldmia r1!, {r4 - r7} @ Shouldnt fault
orr r3, r3, r4, push #8 orr r3, r3, r4, lspush #8
mov r4, r4, pull #24 mov r4, r4, lspull #24
orr r4, r4, r5, push #8 orr r4, r4, r5, lspush #8
mov r5, r5, pull #24 mov r5, r5, lspull #24
orr r5, r5, r6, push #8 orr r5, r5, r6, lspush #8
mov r6, r6, pull #24 mov r6, r6, lspull #24
orr r6, r6, r7, push #8 orr r6, r6, r7, lspush #8
stmia r0!, {r3 - r6} stmia r0!, {r3 - r6}
subs ip, ip, #16 subs ip, ip, #16
bpl .Lcfu_3cpy8lp bpl .Lcfu_3cpy8lp
.Lcfu_3rem8lp: tst ip, #8 .Lcfu_3rem8lp: tst ip, #8
movne r3, r7, pull #24 movne r3, r7, lspull #24
ldmneia r1!, {r4, r7} @ Shouldnt fault ldmneia r1!, {r4, r7} @ Shouldnt fault
orrne r3, r3, r4, push #8 orrne r3, r3, r4, lspush #8
movne r4, r4, pull #24 movne r4, r4, lspull #24
orrne r4, r4, r7, push #8 orrne r4, r4, r7, lspush #8
stmneia r0!, {r3 - r4} stmneia r0!, {r3 - r4}
tst ip, #4 tst ip, #4
movne r3, r7, pull #24 movne r3, r7, lspull #24
USER( TUSER( ldrne) r7, [r1], #4) @ May fault USER( TUSER( ldrne) r7, [r1], #4) @ May fault
orrne r3, r3, r7, push #8 orrne r3, r3, r7, lspush #8
strne r3, [r0], #4 strne r3, [r0], #4
ands ip, ip, #3 ands ip, ip, #3
beq .Lcfu_3fupi beq .Lcfu_3fupi
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment