public inbox for linux-arm-kernel@lists.infradead.org
 help / color / mirror / Atom feed
* [PATCH v2] ARM: asm: rename logical shift macros push pull into lspush lspull
@ 2014-02-10 20:19 Victor Kamensky
  2014-02-10 20:19 ` Victor Kamensky
  0 siblings, 1 reply; 11+ messages in thread
From: Victor Kamensky @ 2014-02-10 20:19 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Guys,

This patch renames 'push' and 'pull' logical shift macros in arm 
assembler.h, so it could be included into .S file that use 'push' 
as instruction. That was discussed on [1]. Will Deacon suggested
the idea of the patch.

As far as code change concerned - the change is really only macros
rename and change in all places where macros are used. Even if diff
may seem big it is very simple change.

Changes from previous version:
   - Now instead of changing kvm .S files that use push instruction
   patch rename push and pull
   - This patch is submitted separately from ARM V7 BE KVM series

Testing:
   - Was tested on rmk/for-next branch. TC2 LE and BE images were built
   and run
   - Verified build of all 118 images under arch/arm/configs and 
   with objdump dump verified that images text segment do not change
   compared with base line (modulo buildid (disabled), some initramfs
   addresses)

Will, I added your name under 'Suggested-by:', please let me know if
you object to this.

Thanks,
Victor

[1] http://lists.infradead.org/pipermail/linux-arm-kernel/2014-January/227318.html

Victor Kamensky (1):
  ARM: asm: rename logical shift macros push pull into lspush lspull

 arch/arm/include/asm/assembler.h      |   8 +-
 arch/arm/lib/copy_template.S          |  36 +++----
 arch/arm/lib/csumpartialcopygeneric.S |  96 ++++++++---------
 arch/arm/lib/io-readsl.S              |  12 +--
 arch/arm/lib/io-writesl.S             |  12 +--
 arch/arm/lib/memmove.S                |  36 +++----
 arch/arm/lib/uaccess.S                | 192 +++++++++++++++++-----------------
 7 files changed, 196 insertions(+), 196 deletions(-)

-- 
1.8.1.4

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH v2] ARM: asm: rename logical shift macros push pull into lspush lspull
  2014-02-10 20:19 [PATCH v2] ARM: asm: rename logical shift macros push pull into lspush lspull Victor Kamensky
@ 2014-02-10 20:19 ` Victor Kamensky
  2014-02-10 21:30   ` Nicolas Pitre
  0 siblings, 1 reply; 11+ messages in thread
From: Victor Kamensky @ 2014-02-10 20:19 UTC (permalink / raw)
  To: linux-arm-kernel

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: Will Deacon <will.deacon@arm.com>
Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
---
 arch/arm/include/asm/assembler.h      |   8 +-
 arch/arm/lib/copy_template.S          |  36 +++----
 arch/arm/lib/csumpartialcopygeneric.S |  96 ++++++++---------
 arch/arm/lib/io-readsl.S              |  12 +--
 arch/arm/lib/io-writesl.S             |  12 +--
 arch/arm/lib/memmove.S                |  36 +++----
 arch/arm/lib/uaccess.S                | 192 +++++++++++++++++-----------------
 7 files changed, 196 insertions(+), 196 deletions(-)

diff --git a/arch/arm/include/asm/assembler.h b/arch/arm/include/asm/assembler.h
index 5c22851..380ac4f 100644
--- a/arch/arm/include/asm/assembler.h
+++ b/arch/arm/include/asm/assembler.h
@@ -30,8 +30,8 @@
  * Endian independent macros for shifting bytes within registers.
  */
 #ifndef __ARMEB__
-#define pull            lsr
-#define push            lsl
+#define lspull          lsr
+#define lspush          lsl
 #define get_byte_0      lsl #0
 #define get_byte_1	lsr #8
 #define get_byte_2	lsr #16
@@ -41,8 +41,8 @@
 #define put_byte_2	lsl #16
 #define put_byte_3	lsl #24
 #else
-#define pull            lsl
-#define push            lsr
+#define lspull          lsl
+#define lspush          lsr
 #define get_byte_0	lsr #24
 #define get_byte_1	lsr #16
 #define get_byte_2	lsr #8
diff --git a/arch/arm/lib/copy_template.S b/arch/arm/lib/copy_template.S
index 805e3f8..3bc8eb8 100644
--- a/arch/arm/lib/copy_template.S
+++ b/arch/arm/lib/copy_template.S
@@ -197,24 +197,24 @@
 
 12:	PLD(	pld	[r1, #124]		)
 13:		ldr4w	r1, r4, r5, r6, r7, abort=19f
-		mov	r3, lr, pull #\pull
+		mov	r3, lr, lspull #\pull
 		subs	r2, r2, #32
 		ldr4w	r1, r8, r9, ip, lr, abort=19f
-		orr	r3, r3, r4, push #\push
-		mov	r4, r4, pull #\pull
-		orr	r4, r4, r5, push #\push
-		mov	r5, r5, pull #\pull
-		orr	r5, r5, r6, push #\push
-		mov	r6, r6, pull #\pull
-		orr	r6, r6, r7, push #\push
-		mov	r7, r7, pull #\pull
-		orr	r7, r7, r8, push #\push
-		mov	r8, r8, pull #\pull
-		orr	r8, r8, r9, push #\push
-		mov	r9, r9, pull #\pull
-		orr	r9, r9, ip, push #\push
-		mov	ip, ip, pull #\pull
-		orr	ip, ip, lr, push #\push
+		orr	r3, r3, r4, lspush #\push
+		mov	r4, r4, lspull #\pull
+		orr	r4, r4, r5, lspush #\push
+		mov	r5, r5, lspull #\pull
+		orr	r5, r5, r6, lspush #\push
+		mov	r6, r6, lspull #\pull
+		orr	r6, r6, r7, lspush #\push
+		mov	r7, r7, lspull #\pull
+		orr	r7, r7, r8, lspush #\push
+		mov	r8, r8, lspull #\pull
+		orr	r8, r8, r9, lspush #\push
+		mov	r9, r9, lspull #\pull
+		orr	r9, r9, ip, lspush #\push
+		mov	ip, ip, lspull #\pull
+		orr	ip, ip, lr, lspush #\push
 		str8w	r0, r3, r4, r5, r6, r7, r8, r9, ip, , abort=19f
 		bge	12b
 	PLD(	cmn	r2, #96			)
@@ -225,10 +225,10 @@
 14:		ands	ip, r2, #28
 		beq	16f
 
-15:		mov	r3, lr, pull #\pull
+15:		mov	r3, lr, lspull #\pull
 		ldr1w	r1, lr, abort=21f
 		subs	ip, ip, #4
-		orr	r3, r3, lr, push #\push
+		orr	r3, r3, lr, lspush #\push
 		str1w	r0, r3, abort=21f
 		bgt	15b
 	CALGN(	cmp	r2, #0			)
diff --git a/arch/arm/lib/csumpartialcopygeneric.S b/arch/arm/lib/csumpartialcopygeneric.S
index d620a5f..d6e742d 100644
--- a/arch/arm/lib/csumpartialcopygeneric.S
+++ b/arch/arm/lib/csumpartialcopygeneric.S
@@ -141,7 +141,7 @@ FN_ENTRY
 		tst	len, #2
 		mov	r5, r4, get_byte_0
 		beq	.Lexit
-		adcs	sum, sum, r4, push #16
+		adcs	sum, sum, r4, lspush #16
 		strb	r5, [dst], #1
 		mov	r5, r4, get_byte_1
 		strb	r5, [dst], #1
@@ -171,23 +171,23 @@ FN_ENTRY
 		cmp	ip, #2
 		beq	.Lsrc2_aligned
 		bhi	.Lsrc3_aligned
-		mov	r4, r5, pull #8		@ C = 0
+		mov	r4, r5, lspull #8		@ C = 0
 		bics	ip, len, #15
 		beq	2f
 1:		load4l	r5, r6, r7, r8
-		orr	r4, r4, r5, push #24
-		mov	r5, r5, pull #8
-		orr	r5, r5, r6, push #24
-		mov	r6, r6, pull #8
-		orr	r6, r6, r7, push #24
-		mov	r7, r7, pull #8
-		orr	r7, r7, r8, push #24
+		orr	r4, r4, r5, lspush #24
+		mov	r5, r5, lspull #8
+		orr	r5, r5, r6, lspush #24
+		mov	r6, r6, lspull #8
+		orr	r6, r6, r7, lspush #24
+		mov	r7, r7, lspull #8
+		orr	r7, r7, r8, lspush #24
 		stmia	dst!, {r4, r5, r6, r7}
 		adcs	sum, sum, r4
 		adcs	sum, sum, r5
 		adcs	sum, sum, r6
 		adcs	sum, sum, r7
-		mov	r4, r8, pull #8
+		mov	r4, r8, lspull #8
 		sub	ip, ip, #16
 		teq	ip, #0
 		bne	1b
@@ -196,50 +196,50 @@ FN_ENTRY
 		tst	ip, #8
 		beq	3f
 		load2l	r5, r6
-		orr	r4, r4, r5, push #24
-		mov	r5, r5, pull #8
-		orr	r5, r5, r6, push #24
+		orr	r4, r4, r5, lspush #24
+		mov	r5, r5, lspull #8
+		orr	r5, r5, r6, lspush #24
 		stmia	dst!, {r4, r5}
 		adcs	sum, sum, r4
 		adcs	sum, sum, r5
-		mov	r4, r6, pull #8
+		mov	r4, r6, lspull #8
 		tst	ip, #4
 		beq	4f
 3:		load1l	r5
-		orr	r4, r4, r5, push #24
+		orr	r4, r4, r5, lspush #24
 		str	r4, [dst], #4
 		adcs	sum, sum, r4
-		mov	r4, r5, pull #8
+		mov	r4, r5, lspull #8
 4:		ands	len, len, #3
 		beq	.Ldone
 		mov	r5, r4, get_byte_0
 		tst	len, #2
 		beq	.Lexit
-		adcs	sum, sum, r4, push #16
+		adcs	sum, sum, r4, lspush #16
 		strb	r5, [dst], #1
 		mov	r5, r4, get_byte_1
 		strb	r5, [dst], #1
 		mov	r5, r4, get_byte_2
 		b	.Lexit
 
-.Lsrc2_aligned:	mov	r4, r5, pull #16
+.Lsrc2_aligned:	mov	r4, r5, lspull #16
 		adds	sum, sum, #0
 		bics	ip, len, #15
 		beq	2f
 1:		load4l	r5, r6, r7, r8
-		orr	r4, r4, r5, push #16
-		mov	r5, r5, pull #16
-		orr	r5, r5, r6, push #16
-		mov	r6, r6, pull #16
-		orr	r6, r6, r7, push #16
-		mov	r7, r7, pull #16
-		orr	r7, r7, r8, push #16
+		orr	r4, r4, r5, lspush #16
+		mov	r5, r5, lspull #16
+		orr	r5, r5, r6, lspush #16
+		mov	r6, r6, lspull #16
+		orr	r6, r6, r7, lspush #16
+		mov	r7, r7, lspull #16
+		orr	r7, r7, r8, lspush #16
 		stmia	dst!, {r4, r5, r6, r7}
 		adcs	sum, sum, r4
 		adcs	sum, sum, r5
 		adcs	sum, sum, r6
 		adcs	sum, sum, r7
-		mov	r4, r8, pull #16
+		mov	r4, r8, lspull #16
 		sub	ip, ip, #16
 		teq	ip, #0
 		bne	1b
@@ -248,20 +248,20 @@ FN_ENTRY
 		tst	ip, #8
 		beq	3f
 		load2l	r5, r6
-		orr	r4, r4, r5, push #16
-		mov	r5, r5, pull #16
-		orr	r5, r5, r6, push #16
+		orr	r4, r4, r5, lspush #16
+		mov	r5, r5, lspull #16
+		orr	r5, r5, r6, lspush #16
 		stmia	dst!, {r4, r5}
 		adcs	sum, sum, r4
 		adcs	sum, sum, r5
-		mov	r4, r6, pull #16
+		mov	r4, r6, lspull #16
 		tst	ip, #4
 		beq	4f
 3:		load1l	r5
-		orr	r4, r4, r5, push #16
+		orr	r4, r4, r5, lspush #16
 		str	r4, [dst], #4
 		adcs	sum, sum, r4
-		mov	r4, r5, pull #16
+		mov	r4, r5, lspull #16
 4:		ands	len, len, #3
 		beq	.Ldone
 		mov	r5, r4, get_byte_0
@@ -276,24 +276,24 @@ FN_ENTRY
 		load1b	r5
 		b	.Lexit
 
-.Lsrc3_aligned:	mov	r4, r5, pull #24
+.Lsrc3_aligned:	mov	r4, r5, lspull #24
 		adds	sum, sum, #0
 		bics	ip, len, #15
 		beq	2f
 1:		load4l	r5, r6, r7, r8
-		orr	r4, r4, r5, push #8
-		mov	r5, r5, pull #24
-		orr	r5, r5, r6, push #8
-		mov	r6, r6, pull #24
-		orr	r6, r6, r7, push #8
-		mov	r7, r7, pull #24
-		orr	r7, r7, r8, push #8
+		orr	r4, r4, r5, lspush #8
+		mov	r5, r5, lspull #24
+		orr	r5, r5, r6, lspush #8
+		mov	r6, r6, lspull #24
+		orr	r6, r6, r7, lspush #8
+		mov	r7, r7, lspull #24
+		orr	r7, r7, r8, lspush #8
 		stmia	dst!, {r4, r5, r6, r7}
 		adcs	sum, sum, r4
 		adcs	sum, sum, r5
 		adcs	sum, sum, r6
 		adcs	sum, sum, r7
-		mov	r4, r8, pull #24
+		mov	r4, r8, lspull #24
 		sub	ip, ip, #16
 		teq	ip, #0
 		bne	1b
@@ -302,20 +302,20 @@ FN_ENTRY
 		tst	ip, #8
 		beq	3f
 		load2l	r5, r6
-		orr	r4, r4, r5, push #8
-		mov	r5, r5, pull #24
-		orr	r5, r5, r6, push #8
+		orr	r4, r4, r5, lspush #8
+		mov	r5, r5, lspull #24
+		orr	r5, r5, r6, lspush #8
 		stmia	dst!, {r4, r5}
 		adcs	sum, sum, r4
 		adcs	sum, sum, r5
-		mov	r4, r6, pull #24
+		mov	r4, r6, lspull #24
 		tst	ip, #4
 		beq	4f
 3:		load1l	r5
-		orr	r4, r4, r5, push #8
+		orr	r4, r4, r5, lspush #8
 		str	r4, [dst], #4
 		adcs	sum, sum, r4
-		mov	r4, r5, pull #24
+		mov	r4, r5, lspull #24
 4:		ands	len, len, #3
 		beq	.Ldone
 		mov	r5, r4, get_byte_0
@@ -326,7 +326,7 @@ FN_ENTRY
 		load1l	r4
 		mov	r5, r4, get_byte_0
 		strb	r5, [dst], #1
-		adcs	sum, sum, r4, push #24
+		adcs	sum, sum, r4, lspush #24
 		mov	r5, r4, get_byte_1
 		b	.Lexit
 FN_EXIT
diff --git a/arch/arm/lib/io-readsl.S b/arch/arm/lib/io-readsl.S
index 5fb97e7..7a74309 100644
--- a/arch/arm/lib/io-readsl.S
+++ b/arch/arm/lib/io-readsl.S
@@ -47,25 +47,25 @@ ENTRY(__raw_readsl)
 		strb	ip, [r1], #1
 
 4:		subs	r2, r2, #1
-		mov	ip, r3, pull #24
+		mov	ip, r3, lspull #24
 		ldrne	r3, [r0]
-		orrne	ip, ip, r3, push #8
+		orrne	ip, ip, r3, lspush #8
 		strne	ip, [r1], #4
 		bne	4b
 		b	8f
 
 5:		subs	r2, r2, #1
-		mov	ip, r3, pull #16
+		mov	ip, r3, lspull #16
 		ldrne	r3, [r0]
-		orrne	ip, ip, r3, push #16
+		orrne	ip, ip, r3, lspush #16
 		strne	ip, [r1], #4
 		bne	5b
 		b	7f
 
 6:		subs	r2, r2, #1
-		mov	ip, r3, pull #8
+		mov	ip, r3, lspull #8
 		ldrne	r3, [r0]
-		orrne	ip, ip, r3, push #24
+		orrne	ip, ip, r3, lspush #24
 		strne	ip, [r1], #4
 		bne	6b
 
diff --git a/arch/arm/lib/io-writesl.S b/arch/arm/lib/io-writesl.S
index 8d3b781..d0d104a 100644
--- a/arch/arm/lib/io-writesl.S
+++ b/arch/arm/lib/io-writesl.S
@@ -41,26 +41,26 @@ ENTRY(__raw_writesl)
 		blt	5f
 		bgt	6f
 
-4:		mov	ip, r3, pull #16
+4:		mov	ip, r3, lspull #16
 		ldr	r3, [r1], #4
 		subs	r2, r2, #1
-		orr	ip, ip, r3, push #16
+		orr	ip, ip, r3, lspush #16
 		str	ip, [r0]
 		bne	4b
 		mov	pc, lr
 
-5:		mov	ip, r3, pull #8
+5:		mov	ip, r3, lspull #8
 		ldr	r3, [r1], #4
 		subs	r2, r2, #1
-		orr	ip, ip, r3, push #24
+		orr	ip, ip, r3, lspush #24
 		str	ip, [r0]
 		bne	5b
 		mov	pc, lr
 
-6:		mov	ip, r3, pull #24
+6:		mov	ip, r3, lspull #24
 		ldr	r3, [r1], #4
 		subs	r2, r2, #1
-		orr	ip, ip, r3, push #8
+		orr	ip, ip, r3, lspush #8
 		str	ip, [r0]
 		bne	6b
 		mov	pc, lr
diff --git a/arch/arm/lib/memmove.S b/arch/arm/lib/memmove.S
index 938fc14..d1fc0c0 100644
--- a/arch/arm/lib/memmove.S
+++ b/arch/arm/lib/memmove.S
@@ -147,24 +147,24 @@ ENTRY(memmove)
 
 12:	PLD(	pld	[r1, #-128]		)
 13:		ldmdb   r1!, {r7, r8, r9, ip}
-		mov     lr, r3, push #\push
+		mov     lr, r3, lspush #\push
 		subs    r2, r2, #32
 		ldmdb   r1!, {r3, r4, r5, r6}
-		orr     lr, lr, ip, pull #\pull
-		mov     ip, ip, push #\push
-		orr     ip, ip, r9, pull #\pull
-		mov     r9, r9, push #\push
-		orr     r9, r9, r8, pull #\pull
-		mov     r8, r8, push #\push
-		orr     r8, r8, r7, pull #\pull
-		mov     r7, r7, push #\push
-		orr     r7, r7, r6, pull #\pull
-		mov     r6, r6, push #\push
-		orr     r6, r6, r5, pull #\pull
-		mov     r5, r5, push #\push
-		orr     r5, r5, r4, pull #\pull
-		mov     r4, r4, push #\push
-		orr     r4, r4, r3, pull #\pull
+		orr     lr, lr, ip, lspull #\pull
+		mov     ip, ip, lspush #\push
+		orr     ip, ip, r9, lspull #\pull
+		mov     r9, r9, lspush #\push
+		orr     r9, r9, r8, lspull #\pull
+		mov     r8, r8, lspush #\push
+		orr     r8, r8, r7, lspull #\pull
+		mov     r7, r7, lspush #\push
+		orr     r7, r7, r6, lspull #\pull
+		mov     r6, r6, lspush #\push
+		orr     r6, r6, r5, lspull #\pull
+		mov     r5, r5, lspush #\push
+		orr     r5, r5, r4, lspull #\pull
+		mov     r4, r4, lspush #\push
+		orr     r4, r4, r3, lspull #\pull
 		stmdb   r0!, {r4 - r9, ip, lr}
 		bge	12b
 	PLD(	cmn	r2, #96			)
@@ -175,10 +175,10 @@ ENTRY(memmove)
 14:		ands	ip, r2, #28
 		beq	16f
 
-15:		mov     lr, r3, push #\push
+15:		mov     lr, r3, lspush #\push
 		ldr	r3, [r1, #-4]!
 		subs	ip, ip, #4
-		orr	lr, lr, r3, pull #\pull
+		orr	lr, lr, r3, lspull #\pull
 		str	lr, [r0, #-4]!
 		bgt	15b
 	CALGN(	cmp	r2, #0			)
diff --git a/arch/arm/lib/uaccess.S b/arch/arm/lib/uaccess.S
index 5c908b1..e505209 100644
--- a/arch/arm/lib/uaccess.S
+++ b/arch/arm/lib/uaccess.S
@@ -117,9 +117,9 @@ USER(	TUSER(	strgtb) r3, [r0], #1)			@ May fault
 .Lc2u_1fupi:	subs	r2, r2, #4
 		addmi	ip, r2, #4
 		bmi	.Lc2u_1nowords
-		mov	r3, r7, pull #8
+		mov	r3, r7, lspull #8
 		ldr	r7, [r1], #4
-		orr	r3, r3, r7, push #24
+		orr	r3, r3, r7, lspush #24
 USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
 		mov	ip, r0, lsl #32 - PAGE_SHIFT
 		rsb	ip, ip, #0
@@ -131,30 +131,30 @@ USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
 		subs	ip, ip, #16
 		blt	.Lc2u_1rem8lp
 
-.Lc2u_1cpy8lp:	mov	r3, r7, pull #8
+.Lc2u_1cpy8lp:	mov	r3, r7, lspull #8
 		ldmia	r1!, {r4 - r7}
 		subs	ip, ip, #16
-		orr	r3, r3, r4, push #24
-		mov	r4, r4, pull #8
-		orr	r4, r4, r5, push #24
-		mov	r5, r5, pull #8
-		orr	r5, r5, r6, push #24
-		mov	r6, r6, pull #8
-		orr	r6, r6, r7, push #24
+		orr	r3, r3, r4, lspush #24
+		mov	r4, r4, lspull #8
+		orr	r4, r4, r5, lspush #24
+		mov	r5, r5, lspull #8
+		orr	r5, r5, r6, lspush #24
+		mov	r6, r6, lspull #8
+		orr	r6, r6, r7, lspush #24
 		stmia	r0!, {r3 - r6}			@ Shouldnt fault
 		bpl	.Lc2u_1cpy8lp
 
 .Lc2u_1rem8lp:	tst	ip, #8
-		movne	r3, r7, pull #8
+		movne	r3, r7, lspull #8
 		ldmneia	r1!, {r4, r7}
-		orrne	r3, r3, r4, push #24
-		movne	r4, r4, pull #8
-		orrne	r4, r4, r7, push #24
+		orrne	r3, r3, r4, lspush #24
+		movne	r4, r4, lspull #8
+		orrne	r4, r4, r7, lspush #24
 		stmneia	r0!, {r3 - r4}			@ Shouldnt fault
 		tst	ip, #4
-		movne	r3, r7, pull #8
+		movne	r3, r7, lspull #8
 		ldrne	r7, [r1], #4
-		orrne	r3, r3, r7, push #24
+		orrne	r3, r3, r7, lspush #24
 	TUSER(	strne) r3, [r0], #4			@ Shouldnt fault
 		ands	ip, ip, #3
 		beq	.Lc2u_1fupi
@@ -172,9 +172,9 @@ USER(	TUSER(	strgtb) r3, [r0], #1)			@ May fault
 .Lc2u_2fupi:	subs	r2, r2, #4
 		addmi	ip, r2, #4
 		bmi	.Lc2u_2nowords
-		mov	r3, r7, pull #16
+		mov	r3, r7, lspull #16
 		ldr	r7, [r1], #4
-		orr	r3, r3, r7, push #16
+		orr	r3, r3, r7, lspush #16
 USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
 		mov	ip, r0, lsl #32 - PAGE_SHIFT
 		rsb	ip, ip, #0
@@ -186,30 +186,30 @@ USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
 		subs	ip, ip, #16
 		blt	.Lc2u_2rem8lp
 
-.Lc2u_2cpy8lp:	mov	r3, r7, pull #16
+.Lc2u_2cpy8lp:	mov	r3, r7, lspull #16
 		ldmia	r1!, {r4 - r7}
 		subs	ip, ip, #16
-		orr	r3, r3, r4, push #16
-		mov	r4, r4, pull #16
-		orr	r4, r4, r5, push #16
-		mov	r5, r5, pull #16
-		orr	r5, r5, r6, push #16
-		mov	r6, r6, pull #16
-		orr	r6, r6, r7, push #16
+		orr	r3, r3, r4, lspush #16
+		mov	r4, r4, lspull #16
+		orr	r4, r4, r5, lspush #16
+		mov	r5, r5, lspull #16
+		orr	r5, r5, r6, lspush #16
+		mov	r6, r6, lspull #16
+		orr	r6, r6, r7, lspush #16
 		stmia	r0!, {r3 - r6}			@ Shouldnt fault
 		bpl	.Lc2u_2cpy8lp
 
 .Lc2u_2rem8lp:	tst	ip, #8
-		movne	r3, r7, pull #16
+		movne	r3, r7, lspull #16
 		ldmneia	r1!, {r4, r7}
-		orrne	r3, r3, r4, push #16
-		movne	r4, r4, pull #16
-		orrne	r4, r4, r7, push #16
+		orrne	r3, r3, r4, lspush #16
+		movne	r4, r4, lspull #16
+		orrne	r4, r4, r7, lspush #16
 		stmneia	r0!, {r3 - r4}			@ Shouldnt fault
 		tst	ip, #4
-		movne	r3, r7, pull #16
+		movne	r3, r7, lspull #16
 		ldrne	r7, [r1], #4
-		orrne	r3, r3, r7, push #16
+		orrne	r3, r3, r7, lspush #16
 	TUSER(	strne) r3, [r0], #4			@ Shouldnt fault
 		ands	ip, ip, #3
 		beq	.Lc2u_2fupi
@@ -227,9 +227,9 @@ USER(	TUSER(	strgtb) r3, [r0], #1)			@ May fault
 .Lc2u_3fupi:	subs	r2, r2, #4
 		addmi	ip, r2, #4
 		bmi	.Lc2u_3nowords
-		mov	r3, r7, pull #24
+		mov	r3, r7, lspull #24
 		ldr	r7, [r1], #4
-		orr	r3, r3, r7, push #8
+		orr	r3, r3, r7, lspush #8
 USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
 		mov	ip, r0, lsl #32 - PAGE_SHIFT
 		rsb	ip, ip, #0
@@ -241,30 +241,30 @@ USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
 		subs	ip, ip, #16
 		blt	.Lc2u_3rem8lp
 
-.Lc2u_3cpy8lp:	mov	r3, r7, pull #24
+.Lc2u_3cpy8lp:	mov	r3, r7, lspull #24
 		ldmia	r1!, {r4 - r7}
 		subs	ip, ip, #16
-		orr	r3, r3, r4, push #8
-		mov	r4, r4, pull #24
-		orr	r4, r4, r5, push #8
-		mov	r5, r5, pull #24
-		orr	r5, r5, r6, push #8
-		mov	r6, r6, pull #24
-		orr	r6, r6, r7, push #8
+		orr	r3, r3, r4, lspush #8
+		mov	r4, r4, lspull #24
+		orr	r4, r4, r5, lspush #8
+		mov	r5, r5, lspull #24
+		orr	r5, r5, r6, lspush #8
+		mov	r6, r6, lspull #24
+		orr	r6, r6, r7, lspush #8
 		stmia	r0!, {r3 - r6}			@ Shouldnt fault
 		bpl	.Lc2u_3cpy8lp
 
 .Lc2u_3rem8lp:	tst	ip, #8
-		movne	r3, r7, pull #24
+		movne	r3, r7, lspull #24
 		ldmneia	r1!, {r4, r7}
-		orrne	r3, r3, r4, push #8
-		movne	r4, r4, pull #24
-		orrne	r4, r4, r7, push #8
+		orrne	r3, r3, r4, lspush #8
+		movne	r4, r4, lspull #24
+		orrne	r4, r4, r7, lspush #8
 		stmneia	r0!, {r3 - r4}			@ Shouldnt fault
 		tst	ip, #4
-		movne	r3, r7, pull #24
+		movne	r3, r7, lspull #24
 		ldrne	r7, [r1], #4
-		orrne	r3, r3, r7, push #8
+		orrne	r3, r3, r7, lspush #8
 	TUSER(	strne) r3, [r0], #4			@ Shouldnt fault
 		ands	ip, ip, #3
 		beq	.Lc2u_3fupi
@@ -382,9 +382,9 @@ USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
 .Lcfu_1fupi:	subs	r2, r2, #4
 		addmi	ip, r2, #4
 		bmi	.Lcfu_1nowords
-		mov	r3, r7, pull #8
+		mov	r3, r7, lspull #8
 USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
-		orr	r3, r3, r7, push #24
+		orr	r3, r3, r7, lspush #24
 		str	r3, [r0], #4
 		mov	ip, r1, lsl #32 - PAGE_SHIFT
 		rsb	ip, ip, #0
@@ -396,30 +396,30 @@ USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
 		subs	ip, ip, #16
 		blt	.Lcfu_1rem8lp
 
-.Lcfu_1cpy8lp:	mov	r3, r7, pull #8
+.Lcfu_1cpy8lp:	mov	r3, r7, lspull #8
 		ldmia	r1!, {r4 - r7}			@ Shouldnt fault
 		subs	ip, ip, #16
-		orr	r3, r3, r4, push #24
-		mov	r4, r4, pull #8
-		orr	r4, r4, r5, push #24
-		mov	r5, r5, pull #8
-		orr	r5, r5, r6, push #24
-		mov	r6, r6, pull #8
-		orr	r6, r6, r7, push #24
+		orr	r3, r3, r4, lspush #24
+		mov	r4, r4, lspull #8
+		orr	r4, r4, r5, lspush #24
+		mov	r5, r5, lspull #8
+		orr	r5, r5, r6, lspush #24
+		mov	r6, r6, lspull #8
+		orr	r6, r6, r7, lspush #24
 		stmia	r0!, {r3 - r6}
 		bpl	.Lcfu_1cpy8lp
 
 .Lcfu_1rem8lp:	tst	ip, #8
-		movne	r3, r7, pull #8
+		movne	r3, r7, lspull #8
 		ldmneia	r1!, {r4, r7}			@ Shouldnt fault
-		orrne	r3, r3, r4, push #24
-		movne	r4, r4, pull #8
-		orrne	r4, r4, r7, push #24
+		orrne	r3, r3, r4, lspush #24
+		movne	r4, r4, lspull #8
+		orrne	r4, r4, r7, lspush #24
 		stmneia	r0!, {r3 - r4}
 		tst	ip, #4
-		movne	r3, r7, pull #8
+		movne	r3, r7, lspull #8
 USER(	TUSER(	ldrne) r7, [r1], #4)			@ May fault
-		orrne	r3, r3, r7, push #24
+		orrne	r3, r3, r7, lspush #24
 		strne	r3, [r0], #4
 		ands	ip, ip, #3
 		beq	.Lcfu_1fupi
@@ -437,9 +437,9 @@ USER(	TUSER(	ldrne) r7, [r1], #4)			@ May fault
 .Lcfu_2fupi:	subs	r2, r2, #4
 		addmi	ip, r2, #4
 		bmi	.Lcfu_2nowords
-		mov	r3, r7, pull #16
+		mov	r3, r7, lspull #16
 USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
-		orr	r3, r3, r7, push #16
+		orr	r3, r3, r7, lspush #16
 		str	r3, [r0], #4
 		mov	ip, r1, lsl #32 - PAGE_SHIFT
 		rsb	ip, ip, #0
@@ -452,30 +452,30 @@ USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
 		blt	.Lcfu_2rem8lp
 
 
-.Lcfu_2cpy8lp:	mov	r3, r7, pull #16
+.Lcfu_2cpy8lp:	mov	r3, r7, lspull #16
 		ldmia	r1!, {r4 - r7}			@ Shouldnt fault
 		subs	ip, ip, #16
-		orr	r3, r3, r4, push #16
-		mov	r4, r4, pull #16
-		orr	r4, r4, r5, push #16
-		mov	r5, r5, pull #16
-		orr	r5, r5, r6, push #16
-		mov	r6, r6, pull #16
-		orr	r6, r6, r7, push #16
+		orr	r3, r3, r4, lspush #16
+		mov	r4, r4, lspull #16
+		orr	r4, r4, r5, lspush #16
+		mov	r5, r5, lspull #16
+		orr	r5, r5, r6, lspush #16
+		mov	r6, r6, lspull #16
+		orr	r6, r6, r7, lspush #16
 		stmia	r0!, {r3 - r6}
 		bpl	.Lcfu_2cpy8lp
 
 .Lcfu_2rem8lp:	tst	ip, #8
-		movne	r3, r7, pull #16
+		movne	r3, r7, lspull #16
 		ldmneia	r1!, {r4, r7}			@ Shouldnt fault
-		orrne	r3, r3, r4, push #16
-		movne	r4, r4, pull #16
-		orrne	r4, r4, r7, push #16
+		orrne	r3, r3, r4, lspush #16
+		movne	r4, r4, lspull #16
+		orrne	r4, r4, r7, lspush #16
 		stmneia	r0!, {r3 - r4}
 		tst	ip, #4
-		movne	r3, r7, pull #16
+		movne	r3, r7, lspull #16
 USER(	TUSER(	ldrne) r7, [r1], #4)			@ May fault
-		orrne	r3, r3, r7, push #16
+		orrne	r3, r3, r7, lspush #16
 		strne	r3, [r0], #4
 		ands	ip, ip, #3
 		beq	.Lcfu_2fupi
@@ -493,9 +493,9 @@ USER(	TUSER(	ldrgtb) r3, [r1], #0)			@ May fault
 .Lcfu_3fupi:	subs	r2, r2, #4
 		addmi	ip, r2, #4
 		bmi	.Lcfu_3nowords
-		mov	r3, r7, pull #24
+		mov	r3, r7, lspull #24
 USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
-		orr	r3, r3, r7, push #8
+		orr	r3, r3, r7, lspush #8
 		str	r3, [r0], #4
 		mov	ip, r1, lsl #32 - PAGE_SHIFT
 		rsb	ip, ip, #0
@@ -507,30 +507,30 @@ USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
 		subs	ip, ip, #16
 		blt	.Lcfu_3rem8lp
 
-.Lcfu_3cpy8lp:	mov	r3, r7, pull #24
+.Lcfu_3cpy8lp:	mov	r3, r7, lspull #24
 		ldmia	r1!, {r4 - r7}			@ Shouldnt fault
-		orr	r3, r3, r4, push #8
-		mov	r4, r4, pull #24
-		orr	r4, r4, r5, push #8
-		mov	r5, r5, pull #24
-		orr	r5, r5, r6, push #8
-		mov	r6, r6, pull #24
-		orr	r6, r6, r7, push #8
+		orr	r3, r3, r4, lspush #8
+		mov	r4, r4, lspull #24
+		orr	r4, r4, r5, lspush #8
+		mov	r5, r5, lspull #24
+		orr	r5, r5, r6, lspush #8
+		mov	r6, r6, lspull #24
+		orr	r6, r6, r7, lspush #8
 		stmia	r0!, {r3 - r6}
 		subs	ip, ip, #16
 		bpl	.Lcfu_3cpy8lp
 
 .Lcfu_3rem8lp:	tst	ip, #8
-		movne	r3, r7, pull #24
+		movne	r3, r7, lspull #24
 		ldmneia	r1!, {r4, r7}			@ Shouldnt fault
-		orrne	r3, r3, r4, push #8
-		movne	r4, r4, pull #24
-		orrne	r4, r4, r7, push #8
+		orrne	r3, r3, r4, lspush #8
+		movne	r4, r4, lspull #24
+		orrne	r4, r4, r7, lspush #8
 		stmneia	r0!, {r3 - r4}
 		tst	ip, #4
-		movne	r3, r7, pull #24
+		movne	r3, r7, lspull #24
 USER(	TUSER(	ldrne) r7, [r1], #4)			@ May fault
-		orrne	r3, r3, r7, push #8
+		orrne	r3, r3, r7, lspush #8
 		strne	r3, [r0], #4
 		ands	ip, ip, #3
 		beq	.Lcfu_3fupi
-- 
1.8.1.4

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v2] ARM: asm: rename logical shift macros push pull into lspush lspull
  2014-02-10 20:19 ` Victor Kamensky
@ 2014-02-10 21:30   ` Nicolas Pitre
  2014-02-11 15:54     ` Dave Martin
  0 siblings, 1 reply; 11+ messages in thread
From: Nicolas Pitre @ 2014-02-10 21:30 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, 10 Feb 2014, Victor Kamensky wrote:

> Renames logical shift macros, 'push' and 'pull', defined in
> arch/arm/include/asm/assembler.h, into 'lspush' and 'lspull'.

I don't have any fundamental objection to the idea, except maybe for the 
actual names.  I just can't come up with anything better though.  
Therefore...

Acked-by: Nicolas Pitre <nico@linaro.org>

> 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: Will Deacon <will.deacon@arm.com>
> Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
> ---
>  arch/arm/include/asm/assembler.h      |   8 +-
>  arch/arm/lib/copy_template.S          |  36 +++----
>  arch/arm/lib/csumpartialcopygeneric.S |  96 ++++++++---------
>  arch/arm/lib/io-readsl.S              |  12 +--
>  arch/arm/lib/io-writesl.S             |  12 +--
>  arch/arm/lib/memmove.S                |  36 +++----
>  arch/arm/lib/uaccess.S                | 192 +++++++++++++++++-----------------
>  7 files changed, 196 insertions(+), 196 deletions(-)
> 
> diff --git a/arch/arm/include/asm/assembler.h b/arch/arm/include/asm/assembler.h
> index 5c22851..380ac4f 100644
> --- a/arch/arm/include/asm/assembler.h
> +++ b/arch/arm/include/asm/assembler.h
> @@ -30,8 +30,8 @@
>   * Endian independent macros for shifting bytes within registers.
>   */
>  #ifndef __ARMEB__
> -#define pull            lsr
> -#define push            lsl
> +#define lspull          lsr
> +#define lspush          lsl
>  #define get_byte_0      lsl #0
>  #define get_byte_1	lsr #8
>  #define get_byte_2	lsr #16
> @@ -41,8 +41,8 @@
>  #define put_byte_2	lsl #16
>  #define put_byte_3	lsl #24
>  #else
> -#define pull            lsl
> -#define push            lsr
> +#define lspull          lsl
> +#define lspush          lsr
>  #define get_byte_0	lsr #24
>  #define get_byte_1	lsr #16
>  #define get_byte_2	lsr #8
> diff --git a/arch/arm/lib/copy_template.S b/arch/arm/lib/copy_template.S
> index 805e3f8..3bc8eb8 100644
> --- a/arch/arm/lib/copy_template.S
> +++ b/arch/arm/lib/copy_template.S
> @@ -197,24 +197,24 @@
>  
>  12:	PLD(	pld	[r1, #124]		)
>  13:		ldr4w	r1, r4, r5, r6, r7, abort=19f
> -		mov	r3, lr, pull #\pull
> +		mov	r3, lr, lspull #\pull
>  		subs	r2, r2, #32
>  		ldr4w	r1, r8, r9, ip, lr, abort=19f
> -		orr	r3, r3, r4, push #\push
> -		mov	r4, r4, pull #\pull
> -		orr	r4, r4, r5, push #\push
> -		mov	r5, r5, pull #\pull
> -		orr	r5, r5, r6, push #\push
> -		mov	r6, r6, pull #\pull
> -		orr	r6, r6, r7, push #\push
> -		mov	r7, r7, pull #\pull
> -		orr	r7, r7, r8, push #\push
> -		mov	r8, r8, pull #\pull
> -		orr	r8, r8, r9, push #\push
> -		mov	r9, r9, pull #\pull
> -		orr	r9, r9, ip, push #\push
> -		mov	ip, ip, pull #\pull
> -		orr	ip, ip, lr, push #\push
> +		orr	r3, r3, r4, lspush #\push
> +		mov	r4, r4, lspull #\pull
> +		orr	r4, r4, r5, lspush #\push
> +		mov	r5, r5, lspull #\pull
> +		orr	r5, r5, r6, lspush #\push
> +		mov	r6, r6, lspull #\pull
> +		orr	r6, r6, r7, lspush #\push
> +		mov	r7, r7, lspull #\pull
> +		orr	r7, r7, r8, lspush #\push
> +		mov	r8, r8, lspull #\pull
> +		orr	r8, r8, r9, lspush #\push
> +		mov	r9, r9, lspull #\pull
> +		orr	r9, r9, ip, lspush #\push
> +		mov	ip, ip, lspull #\pull
> +		orr	ip, ip, lr, lspush #\push
>  		str8w	r0, r3, r4, r5, r6, r7, r8, r9, ip, , abort=19f
>  		bge	12b
>  	PLD(	cmn	r2, #96			)
> @@ -225,10 +225,10 @@
>  14:		ands	ip, r2, #28
>  		beq	16f
>  
> -15:		mov	r3, lr, pull #\pull
> +15:		mov	r3, lr, lspull #\pull
>  		ldr1w	r1, lr, abort=21f
>  		subs	ip, ip, #4
> -		orr	r3, r3, lr, push #\push
> +		orr	r3, r3, lr, lspush #\push
>  		str1w	r0, r3, abort=21f
>  		bgt	15b
>  	CALGN(	cmp	r2, #0			)
> diff --git a/arch/arm/lib/csumpartialcopygeneric.S b/arch/arm/lib/csumpartialcopygeneric.S
> index d620a5f..d6e742d 100644
> --- a/arch/arm/lib/csumpartialcopygeneric.S
> +++ b/arch/arm/lib/csumpartialcopygeneric.S
> @@ -141,7 +141,7 @@ FN_ENTRY
>  		tst	len, #2
>  		mov	r5, r4, get_byte_0
>  		beq	.Lexit
> -		adcs	sum, sum, r4, push #16
> +		adcs	sum, sum, r4, lspush #16
>  		strb	r5, [dst], #1
>  		mov	r5, r4, get_byte_1
>  		strb	r5, [dst], #1
> @@ -171,23 +171,23 @@ FN_ENTRY
>  		cmp	ip, #2
>  		beq	.Lsrc2_aligned
>  		bhi	.Lsrc3_aligned
> -		mov	r4, r5, pull #8		@ C = 0
> +		mov	r4, r5, lspull #8		@ C = 0
>  		bics	ip, len, #15
>  		beq	2f
>  1:		load4l	r5, r6, r7, r8
> -		orr	r4, r4, r5, push #24
> -		mov	r5, r5, pull #8
> -		orr	r5, r5, r6, push #24
> -		mov	r6, r6, pull #8
> -		orr	r6, r6, r7, push #24
> -		mov	r7, r7, pull #8
> -		orr	r7, r7, r8, push #24
> +		orr	r4, r4, r5, lspush #24
> +		mov	r5, r5, lspull #8
> +		orr	r5, r5, r6, lspush #24
> +		mov	r6, r6, lspull #8
> +		orr	r6, r6, r7, lspush #24
> +		mov	r7, r7, lspull #8
> +		orr	r7, r7, r8, lspush #24
>  		stmia	dst!, {r4, r5, r6, r7}
>  		adcs	sum, sum, r4
>  		adcs	sum, sum, r5
>  		adcs	sum, sum, r6
>  		adcs	sum, sum, r7
> -		mov	r4, r8, pull #8
> +		mov	r4, r8, lspull #8
>  		sub	ip, ip, #16
>  		teq	ip, #0
>  		bne	1b
> @@ -196,50 +196,50 @@ FN_ENTRY
>  		tst	ip, #8
>  		beq	3f
>  		load2l	r5, r6
> -		orr	r4, r4, r5, push #24
> -		mov	r5, r5, pull #8
> -		orr	r5, r5, r6, push #24
> +		orr	r4, r4, r5, lspush #24
> +		mov	r5, r5, lspull #8
> +		orr	r5, r5, r6, lspush #24
>  		stmia	dst!, {r4, r5}
>  		adcs	sum, sum, r4
>  		adcs	sum, sum, r5
> -		mov	r4, r6, pull #8
> +		mov	r4, r6, lspull #8
>  		tst	ip, #4
>  		beq	4f
>  3:		load1l	r5
> -		orr	r4, r4, r5, push #24
> +		orr	r4, r4, r5, lspush #24
>  		str	r4, [dst], #4
>  		adcs	sum, sum, r4
> -		mov	r4, r5, pull #8
> +		mov	r4, r5, lspull #8
>  4:		ands	len, len, #3
>  		beq	.Ldone
>  		mov	r5, r4, get_byte_0
>  		tst	len, #2
>  		beq	.Lexit
> -		adcs	sum, sum, r4, push #16
> +		adcs	sum, sum, r4, lspush #16
>  		strb	r5, [dst], #1
>  		mov	r5, r4, get_byte_1
>  		strb	r5, [dst], #1
>  		mov	r5, r4, get_byte_2
>  		b	.Lexit
>  
> -.Lsrc2_aligned:	mov	r4, r5, pull #16
> +.Lsrc2_aligned:	mov	r4, r5, lspull #16
>  		adds	sum, sum, #0
>  		bics	ip, len, #15
>  		beq	2f
>  1:		load4l	r5, r6, r7, r8
> -		orr	r4, r4, r5, push #16
> -		mov	r5, r5, pull #16
> -		orr	r5, r5, r6, push #16
> -		mov	r6, r6, pull #16
> -		orr	r6, r6, r7, push #16
> -		mov	r7, r7, pull #16
> -		orr	r7, r7, r8, push #16
> +		orr	r4, r4, r5, lspush #16
> +		mov	r5, r5, lspull #16
> +		orr	r5, r5, r6, lspush #16
> +		mov	r6, r6, lspull #16
> +		orr	r6, r6, r7, lspush #16
> +		mov	r7, r7, lspull #16
> +		orr	r7, r7, r8, lspush #16
>  		stmia	dst!, {r4, r5, r6, r7}
>  		adcs	sum, sum, r4
>  		adcs	sum, sum, r5
>  		adcs	sum, sum, r6
>  		adcs	sum, sum, r7
> -		mov	r4, r8, pull #16
> +		mov	r4, r8, lspull #16
>  		sub	ip, ip, #16
>  		teq	ip, #0
>  		bne	1b
> @@ -248,20 +248,20 @@ FN_ENTRY
>  		tst	ip, #8
>  		beq	3f
>  		load2l	r5, r6
> -		orr	r4, r4, r5, push #16
> -		mov	r5, r5, pull #16
> -		orr	r5, r5, r6, push #16
> +		orr	r4, r4, r5, lspush #16
> +		mov	r5, r5, lspull #16
> +		orr	r5, r5, r6, lspush #16
>  		stmia	dst!, {r4, r5}
>  		adcs	sum, sum, r4
>  		adcs	sum, sum, r5
> -		mov	r4, r6, pull #16
> +		mov	r4, r6, lspull #16
>  		tst	ip, #4
>  		beq	4f
>  3:		load1l	r5
> -		orr	r4, r4, r5, push #16
> +		orr	r4, r4, r5, lspush #16
>  		str	r4, [dst], #4
>  		adcs	sum, sum, r4
> -		mov	r4, r5, pull #16
> +		mov	r4, r5, lspull #16
>  4:		ands	len, len, #3
>  		beq	.Ldone
>  		mov	r5, r4, get_byte_0
> @@ -276,24 +276,24 @@ FN_ENTRY
>  		load1b	r5
>  		b	.Lexit
>  
> -.Lsrc3_aligned:	mov	r4, r5, pull #24
> +.Lsrc3_aligned:	mov	r4, r5, lspull #24
>  		adds	sum, sum, #0
>  		bics	ip, len, #15
>  		beq	2f
>  1:		load4l	r5, r6, r7, r8
> -		orr	r4, r4, r5, push #8
> -		mov	r5, r5, pull #24
> -		orr	r5, r5, r6, push #8
> -		mov	r6, r6, pull #24
> -		orr	r6, r6, r7, push #8
> -		mov	r7, r7, pull #24
> -		orr	r7, r7, r8, push #8
> +		orr	r4, r4, r5, lspush #8
> +		mov	r5, r5, lspull #24
> +		orr	r5, r5, r6, lspush #8
> +		mov	r6, r6, lspull #24
> +		orr	r6, r6, r7, lspush #8
> +		mov	r7, r7, lspull #24
> +		orr	r7, r7, r8, lspush #8
>  		stmia	dst!, {r4, r5, r6, r7}
>  		adcs	sum, sum, r4
>  		adcs	sum, sum, r5
>  		adcs	sum, sum, r6
>  		adcs	sum, sum, r7
> -		mov	r4, r8, pull #24
> +		mov	r4, r8, lspull #24
>  		sub	ip, ip, #16
>  		teq	ip, #0
>  		bne	1b
> @@ -302,20 +302,20 @@ FN_ENTRY
>  		tst	ip, #8
>  		beq	3f
>  		load2l	r5, r6
> -		orr	r4, r4, r5, push #8
> -		mov	r5, r5, pull #24
> -		orr	r5, r5, r6, push #8
> +		orr	r4, r4, r5, lspush #8
> +		mov	r5, r5, lspull #24
> +		orr	r5, r5, r6, lspush #8
>  		stmia	dst!, {r4, r5}
>  		adcs	sum, sum, r4
>  		adcs	sum, sum, r5
> -		mov	r4, r6, pull #24
> +		mov	r4, r6, lspull #24
>  		tst	ip, #4
>  		beq	4f
>  3:		load1l	r5
> -		orr	r4, r4, r5, push #8
> +		orr	r4, r4, r5, lspush #8
>  		str	r4, [dst], #4
>  		adcs	sum, sum, r4
> -		mov	r4, r5, pull #24
> +		mov	r4, r5, lspull #24
>  4:		ands	len, len, #3
>  		beq	.Ldone
>  		mov	r5, r4, get_byte_0
> @@ -326,7 +326,7 @@ FN_ENTRY
>  		load1l	r4
>  		mov	r5, r4, get_byte_0
>  		strb	r5, [dst], #1
> -		adcs	sum, sum, r4, push #24
> +		adcs	sum, sum, r4, lspush #24
>  		mov	r5, r4, get_byte_1
>  		b	.Lexit
>  FN_EXIT
> diff --git a/arch/arm/lib/io-readsl.S b/arch/arm/lib/io-readsl.S
> index 5fb97e7..7a74309 100644
> --- a/arch/arm/lib/io-readsl.S
> +++ b/arch/arm/lib/io-readsl.S
> @@ -47,25 +47,25 @@ ENTRY(__raw_readsl)
>  		strb	ip, [r1], #1
>  
>  4:		subs	r2, r2, #1
> -		mov	ip, r3, pull #24
> +		mov	ip, r3, lspull #24
>  		ldrne	r3, [r0]
> -		orrne	ip, ip, r3, push #8
> +		orrne	ip, ip, r3, lspush #8
>  		strne	ip, [r1], #4
>  		bne	4b
>  		b	8f
>  
>  5:		subs	r2, r2, #1
> -		mov	ip, r3, pull #16
> +		mov	ip, r3, lspull #16
>  		ldrne	r3, [r0]
> -		orrne	ip, ip, r3, push #16
> +		orrne	ip, ip, r3, lspush #16
>  		strne	ip, [r1], #4
>  		bne	5b
>  		b	7f
>  
>  6:		subs	r2, r2, #1
> -		mov	ip, r3, pull #8
> +		mov	ip, r3, lspull #8
>  		ldrne	r3, [r0]
> -		orrne	ip, ip, r3, push #24
> +		orrne	ip, ip, r3, lspush #24
>  		strne	ip, [r1], #4
>  		bne	6b
>  
> diff --git a/arch/arm/lib/io-writesl.S b/arch/arm/lib/io-writesl.S
> index 8d3b781..d0d104a 100644
> --- a/arch/arm/lib/io-writesl.S
> +++ b/arch/arm/lib/io-writesl.S
> @@ -41,26 +41,26 @@ ENTRY(__raw_writesl)
>  		blt	5f
>  		bgt	6f
>  
> -4:		mov	ip, r3, pull #16
> +4:		mov	ip, r3, lspull #16
>  		ldr	r3, [r1], #4
>  		subs	r2, r2, #1
> -		orr	ip, ip, r3, push #16
> +		orr	ip, ip, r3, lspush #16
>  		str	ip, [r0]
>  		bne	4b
>  		mov	pc, lr
>  
> -5:		mov	ip, r3, pull #8
> +5:		mov	ip, r3, lspull #8
>  		ldr	r3, [r1], #4
>  		subs	r2, r2, #1
> -		orr	ip, ip, r3, push #24
> +		orr	ip, ip, r3, lspush #24
>  		str	ip, [r0]
>  		bne	5b
>  		mov	pc, lr
>  
> -6:		mov	ip, r3, pull #24
> +6:		mov	ip, r3, lspull #24
>  		ldr	r3, [r1], #4
>  		subs	r2, r2, #1
> -		orr	ip, ip, r3, push #8
> +		orr	ip, ip, r3, lspush #8
>  		str	ip, [r0]
>  		bne	6b
>  		mov	pc, lr
> diff --git a/arch/arm/lib/memmove.S b/arch/arm/lib/memmove.S
> index 938fc14..d1fc0c0 100644
> --- a/arch/arm/lib/memmove.S
> +++ b/arch/arm/lib/memmove.S
> @@ -147,24 +147,24 @@ ENTRY(memmove)
>  
>  12:	PLD(	pld	[r1, #-128]		)
>  13:		ldmdb   r1!, {r7, r8, r9, ip}
> -		mov     lr, r3, push #\push
> +		mov     lr, r3, lspush #\push
>  		subs    r2, r2, #32
>  		ldmdb   r1!, {r3, r4, r5, r6}
> -		orr     lr, lr, ip, pull #\pull
> -		mov     ip, ip, push #\push
> -		orr     ip, ip, r9, pull #\pull
> -		mov     r9, r9, push #\push
> -		orr     r9, r9, r8, pull #\pull
> -		mov     r8, r8, push #\push
> -		orr     r8, r8, r7, pull #\pull
> -		mov     r7, r7, push #\push
> -		orr     r7, r7, r6, pull #\pull
> -		mov     r6, r6, push #\push
> -		orr     r6, r6, r5, pull #\pull
> -		mov     r5, r5, push #\push
> -		orr     r5, r5, r4, pull #\pull
> -		mov     r4, r4, push #\push
> -		orr     r4, r4, r3, pull #\pull
> +		orr     lr, lr, ip, lspull #\pull
> +		mov     ip, ip, lspush #\push
> +		orr     ip, ip, r9, lspull #\pull
> +		mov     r9, r9, lspush #\push
> +		orr     r9, r9, r8, lspull #\pull
> +		mov     r8, r8, lspush #\push
> +		orr     r8, r8, r7, lspull #\pull
> +		mov     r7, r7, lspush #\push
> +		orr     r7, r7, r6, lspull #\pull
> +		mov     r6, r6, lspush #\push
> +		orr     r6, r6, r5, lspull #\pull
> +		mov     r5, r5, lspush #\push
> +		orr     r5, r5, r4, lspull #\pull
> +		mov     r4, r4, lspush #\push
> +		orr     r4, r4, r3, lspull #\pull
>  		stmdb   r0!, {r4 - r9, ip, lr}
>  		bge	12b
>  	PLD(	cmn	r2, #96			)
> @@ -175,10 +175,10 @@ ENTRY(memmove)
>  14:		ands	ip, r2, #28
>  		beq	16f
>  
> -15:		mov     lr, r3, push #\push
> +15:		mov     lr, r3, lspush #\push
>  		ldr	r3, [r1, #-4]!
>  		subs	ip, ip, #4
> -		orr	lr, lr, r3, pull #\pull
> +		orr	lr, lr, r3, lspull #\pull
>  		str	lr, [r0, #-4]!
>  		bgt	15b
>  	CALGN(	cmp	r2, #0			)
> diff --git a/arch/arm/lib/uaccess.S b/arch/arm/lib/uaccess.S
> index 5c908b1..e505209 100644
> --- a/arch/arm/lib/uaccess.S
> +++ b/arch/arm/lib/uaccess.S
> @@ -117,9 +117,9 @@ USER(	TUSER(	strgtb) r3, [r0], #1)			@ May fault
>  .Lc2u_1fupi:	subs	r2, r2, #4
>  		addmi	ip, r2, #4
>  		bmi	.Lc2u_1nowords
> -		mov	r3, r7, pull #8
> +		mov	r3, r7, lspull #8
>  		ldr	r7, [r1], #4
> -		orr	r3, r3, r7, push #24
> +		orr	r3, r3, r7, lspush #24
>  USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
>  		mov	ip, r0, lsl #32 - PAGE_SHIFT
>  		rsb	ip, ip, #0
> @@ -131,30 +131,30 @@ USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
>  		subs	ip, ip, #16
>  		blt	.Lc2u_1rem8lp
>  
> -.Lc2u_1cpy8lp:	mov	r3, r7, pull #8
> +.Lc2u_1cpy8lp:	mov	r3, r7, lspull #8
>  		ldmia	r1!, {r4 - r7}
>  		subs	ip, ip, #16
> -		orr	r3, r3, r4, push #24
> -		mov	r4, r4, pull #8
> -		orr	r4, r4, r5, push #24
> -		mov	r5, r5, pull #8
> -		orr	r5, r5, r6, push #24
> -		mov	r6, r6, pull #8
> -		orr	r6, r6, r7, push #24
> +		orr	r3, r3, r4, lspush #24
> +		mov	r4, r4, lspull #8
> +		orr	r4, r4, r5, lspush #24
> +		mov	r5, r5, lspull #8
> +		orr	r5, r5, r6, lspush #24
> +		mov	r6, r6, lspull #8
> +		orr	r6, r6, r7, lspush #24
>  		stmia	r0!, {r3 - r6}			@ Shouldnt fault
>  		bpl	.Lc2u_1cpy8lp
>  
>  .Lc2u_1rem8lp:	tst	ip, #8
> -		movne	r3, r7, pull #8
> +		movne	r3, r7, lspull #8
>  		ldmneia	r1!, {r4, r7}
> -		orrne	r3, r3, r4, push #24
> -		movne	r4, r4, pull #8
> -		orrne	r4, r4, r7, push #24
> +		orrne	r3, r3, r4, lspush #24
> +		movne	r4, r4, lspull #8
> +		orrne	r4, r4, r7, lspush #24
>  		stmneia	r0!, {r3 - r4}			@ Shouldnt fault
>  		tst	ip, #4
> -		movne	r3, r7, pull #8
> +		movne	r3, r7, lspull #8
>  		ldrne	r7, [r1], #4
> -		orrne	r3, r3, r7, push #24
> +		orrne	r3, r3, r7, lspush #24
>  	TUSER(	strne) r3, [r0], #4			@ Shouldnt fault
>  		ands	ip, ip, #3
>  		beq	.Lc2u_1fupi
> @@ -172,9 +172,9 @@ USER(	TUSER(	strgtb) r3, [r0], #1)			@ May fault
>  .Lc2u_2fupi:	subs	r2, r2, #4
>  		addmi	ip, r2, #4
>  		bmi	.Lc2u_2nowords
> -		mov	r3, r7, pull #16
> +		mov	r3, r7, lspull #16
>  		ldr	r7, [r1], #4
> -		orr	r3, r3, r7, push #16
> +		orr	r3, r3, r7, lspush #16
>  USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
>  		mov	ip, r0, lsl #32 - PAGE_SHIFT
>  		rsb	ip, ip, #0
> @@ -186,30 +186,30 @@ USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
>  		subs	ip, ip, #16
>  		blt	.Lc2u_2rem8lp
>  
> -.Lc2u_2cpy8lp:	mov	r3, r7, pull #16
> +.Lc2u_2cpy8lp:	mov	r3, r7, lspull #16
>  		ldmia	r1!, {r4 - r7}
>  		subs	ip, ip, #16
> -		orr	r3, r3, r4, push #16
> -		mov	r4, r4, pull #16
> -		orr	r4, r4, r5, push #16
> -		mov	r5, r5, pull #16
> -		orr	r5, r5, r6, push #16
> -		mov	r6, r6, pull #16
> -		orr	r6, r6, r7, push #16
> +		orr	r3, r3, r4, lspush #16
> +		mov	r4, r4, lspull #16
> +		orr	r4, r4, r5, lspush #16
> +		mov	r5, r5, lspull #16
> +		orr	r5, r5, r6, lspush #16
> +		mov	r6, r6, lspull #16
> +		orr	r6, r6, r7, lspush #16
>  		stmia	r0!, {r3 - r6}			@ Shouldnt fault
>  		bpl	.Lc2u_2cpy8lp
>  
>  .Lc2u_2rem8lp:	tst	ip, #8
> -		movne	r3, r7, pull #16
> +		movne	r3, r7, lspull #16
>  		ldmneia	r1!, {r4, r7}
> -		orrne	r3, r3, r4, push #16
> -		movne	r4, r4, pull #16
> -		orrne	r4, r4, r7, push #16
> +		orrne	r3, r3, r4, lspush #16
> +		movne	r4, r4, lspull #16
> +		orrne	r4, r4, r7, lspush #16
>  		stmneia	r0!, {r3 - r4}			@ Shouldnt fault
>  		tst	ip, #4
> -		movne	r3, r7, pull #16
> +		movne	r3, r7, lspull #16
>  		ldrne	r7, [r1], #4
> -		orrne	r3, r3, r7, push #16
> +		orrne	r3, r3, r7, lspush #16
>  	TUSER(	strne) r3, [r0], #4			@ Shouldnt fault
>  		ands	ip, ip, #3
>  		beq	.Lc2u_2fupi
> @@ -227,9 +227,9 @@ USER(	TUSER(	strgtb) r3, [r0], #1)			@ May fault
>  .Lc2u_3fupi:	subs	r2, r2, #4
>  		addmi	ip, r2, #4
>  		bmi	.Lc2u_3nowords
> -		mov	r3, r7, pull #24
> +		mov	r3, r7, lspull #24
>  		ldr	r7, [r1], #4
> -		orr	r3, r3, r7, push #8
> +		orr	r3, r3, r7, lspush #8
>  USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
>  		mov	ip, r0, lsl #32 - PAGE_SHIFT
>  		rsb	ip, ip, #0
> @@ -241,30 +241,30 @@ USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
>  		subs	ip, ip, #16
>  		blt	.Lc2u_3rem8lp
>  
> -.Lc2u_3cpy8lp:	mov	r3, r7, pull #24
> +.Lc2u_3cpy8lp:	mov	r3, r7, lspull #24
>  		ldmia	r1!, {r4 - r7}
>  		subs	ip, ip, #16
> -		orr	r3, r3, r4, push #8
> -		mov	r4, r4, pull #24
> -		orr	r4, r4, r5, push #8
> -		mov	r5, r5, pull #24
> -		orr	r5, r5, r6, push #8
> -		mov	r6, r6, pull #24
> -		orr	r6, r6, r7, push #8
> +		orr	r3, r3, r4, lspush #8
> +		mov	r4, r4, lspull #24
> +		orr	r4, r4, r5, lspush #8
> +		mov	r5, r5, lspull #24
> +		orr	r5, r5, r6, lspush #8
> +		mov	r6, r6, lspull #24
> +		orr	r6, r6, r7, lspush #8
>  		stmia	r0!, {r3 - r6}			@ Shouldnt fault
>  		bpl	.Lc2u_3cpy8lp
>  
>  .Lc2u_3rem8lp:	tst	ip, #8
> -		movne	r3, r7, pull #24
> +		movne	r3, r7, lspull #24
>  		ldmneia	r1!, {r4, r7}
> -		orrne	r3, r3, r4, push #8
> -		movne	r4, r4, pull #24
> -		orrne	r4, r4, r7, push #8
> +		orrne	r3, r3, r4, lspush #8
> +		movne	r4, r4, lspull #24
> +		orrne	r4, r4, r7, lspush #8
>  		stmneia	r0!, {r3 - r4}			@ Shouldnt fault
>  		tst	ip, #4
> -		movne	r3, r7, pull #24
> +		movne	r3, r7, lspull #24
>  		ldrne	r7, [r1], #4
> -		orrne	r3, r3, r7, push #8
> +		orrne	r3, r3, r7, lspush #8
>  	TUSER(	strne) r3, [r0], #4			@ Shouldnt fault
>  		ands	ip, ip, #3
>  		beq	.Lc2u_3fupi
> @@ -382,9 +382,9 @@ USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
>  .Lcfu_1fupi:	subs	r2, r2, #4
>  		addmi	ip, r2, #4
>  		bmi	.Lcfu_1nowords
> -		mov	r3, r7, pull #8
> +		mov	r3, r7, lspull #8
>  USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
> -		orr	r3, r3, r7, push #24
> +		orr	r3, r3, r7, lspush #24
>  		str	r3, [r0], #4
>  		mov	ip, r1, lsl #32 - PAGE_SHIFT
>  		rsb	ip, ip, #0
> @@ -396,30 +396,30 @@ USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
>  		subs	ip, ip, #16
>  		blt	.Lcfu_1rem8lp
>  
> -.Lcfu_1cpy8lp:	mov	r3, r7, pull #8
> +.Lcfu_1cpy8lp:	mov	r3, r7, lspull #8
>  		ldmia	r1!, {r4 - r7}			@ Shouldnt fault
>  		subs	ip, ip, #16
> -		orr	r3, r3, r4, push #24
> -		mov	r4, r4, pull #8
> -		orr	r4, r4, r5, push #24
> -		mov	r5, r5, pull #8
> -		orr	r5, r5, r6, push #24
> -		mov	r6, r6, pull #8
> -		orr	r6, r6, r7, push #24
> +		orr	r3, r3, r4, lspush #24
> +		mov	r4, r4, lspull #8
> +		orr	r4, r4, r5, lspush #24
> +		mov	r5, r5, lspull #8
> +		orr	r5, r5, r6, lspush #24
> +		mov	r6, r6, lspull #8
> +		orr	r6, r6, r7, lspush #24
>  		stmia	r0!, {r3 - r6}
>  		bpl	.Lcfu_1cpy8lp
>  
>  .Lcfu_1rem8lp:	tst	ip, #8
> -		movne	r3, r7, pull #8
> +		movne	r3, r7, lspull #8
>  		ldmneia	r1!, {r4, r7}			@ Shouldnt fault
> -		orrne	r3, r3, r4, push #24
> -		movne	r4, r4, pull #8
> -		orrne	r4, r4, r7, push #24
> +		orrne	r3, r3, r4, lspush #24
> +		movne	r4, r4, lspull #8
> +		orrne	r4, r4, r7, lspush #24
>  		stmneia	r0!, {r3 - r4}
>  		tst	ip, #4
> -		movne	r3, r7, pull #8
> +		movne	r3, r7, lspull #8
>  USER(	TUSER(	ldrne) r7, [r1], #4)			@ May fault
> -		orrne	r3, r3, r7, push #24
> +		orrne	r3, r3, r7, lspush #24
>  		strne	r3, [r0], #4
>  		ands	ip, ip, #3
>  		beq	.Lcfu_1fupi
> @@ -437,9 +437,9 @@ USER(	TUSER(	ldrne) r7, [r1], #4)			@ May fault
>  .Lcfu_2fupi:	subs	r2, r2, #4
>  		addmi	ip, r2, #4
>  		bmi	.Lcfu_2nowords
> -		mov	r3, r7, pull #16
> +		mov	r3, r7, lspull #16
>  USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
> -		orr	r3, r3, r7, push #16
> +		orr	r3, r3, r7, lspush #16
>  		str	r3, [r0], #4
>  		mov	ip, r1, lsl #32 - PAGE_SHIFT
>  		rsb	ip, ip, #0
> @@ -452,30 +452,30 @@ USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
>  		blt	.Lcfu_2rem8lp
>  
>  
> -.Lcfu_2cpy8lp:	mov	r3, r7, pull #16
> +.Lcfu_2cpy8lp:	mov	r3, r7, lspull #16
>  		ldmia	r1!, {r4 - r7}			@ Shouldnt fault
>  		subs	ip, ip, #16
> -		orr	r3, r3, r4, push #16
> -		mov	r4, r4, pull #16
> -		orr	r4, r4, r5, push #16
> -		mov	r5, r5, pull #16
> -		orr	r5, r5, r6, push #16
> -		mov	r6, r6, pull #16
> -		orr	r6, r6, r7, push #16
> +		orr	r3, r3, r4, lspush #16
> +		mov	r4, r4, lspull #16
> +		orr	r4, r4, r5, lspush #16
> +		mov	r5, r5, lspull #16
> +		orr	r5, r5, r6, lspush #16
> +		mov	r6, r6, lspull #16
> +		orr	r6, r6, r7, lspush #16
>  		stmia	r0!, {r3 - r6}
>  		bpl	.Lcfu_2cpy8lp
>  
>  .Lcfu_2rem8lp:	tst	ip, #8
> -		movne	r3, r7, pull #16
> +		movne	r3, r7, lspull #16
>  		ldmneia	r1!, {r4, r7}			@ Shouldnt fault
> -		orrne	r3, r3, r4, push #16
> -		movne	r4, r4, pull #16
> -		orrne	r4, r4, r7, push #16
> +		orrne	r3, r3, r4, lspush #16
> +		movne	r4, r4, lspull #16
> +		orrne	r4, r4, r7, lspush #16
>  		stmneia	r0!, {r3 - r4}
>  		tst	ip, #4
> -		movne	r3, r7, pull #16
> +		movne	r3, r7, lspull #16
>  USER(	TUSER(	ldrne) r7, [r1], #4)			@ May fault
> -		orrne	r3, r3, r7, push #16
> +		orrne	r3, r3, r7, lspush #16
>  		strne	r3, [r0], #4
>  		ands	ip, ip, #3
>  		beq	.Lcfu_2fupi
> @@ -493,9 +493,9 @@ USER(	TUSER(	ldrgtb) r3, [r1], #0)			@ May fault
>  .Lcfu_3fupi:	subs	r2, r2, #4
>  		addmi	ip, r2, #4
>  		bmi	.Lcfu_3nowords
> -		mov	r3, r7, pull #24
> +		mov	r3, r7, lspull #24
>  USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
> -		orr	r3, r3, r7, push #8
> +		orr	r3, r3, r7, lspush #8
>  		str	r3, [r0], #4
>  		mov	ip, r1, lsl #32 - PAGE_SHIFT
>  		rsb	ip, ip, #0
> @@ -507,30 +507,30 @@ USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
>  		subs	ip, ip, #16
>  		blt	.Lcfu_3rem8lp
>  
> -.Lcfu_3cpy8lp:	mov	r3, r7, pull #24
> +.Lcfu_3cpy8lp:	mov	r3, r7, lspull #24
>  		ldmia	r1!, {r4 - r7}			@ Shouldnt fault
> -		orr	r3, r3, r4, push #8
> -		mov	r4, r4, pull #24
> -		orr	r4, r4, r5, push #8
> -		mov	r5, r5, pull #24
> -		orr	r5, r5, r6, push #8
> -		mov	r6, r6, pull #24
> -		orr	r6, r6, r7, push #8
> +		orr	r3, r3, r4, lspush #8
> +		mov	r4, r4, lspull #24
> +		orr	r4, r4, r5, lspush #8
> +		mov	r5, r5, lspull #24
> +		orr	r5, r5, r6, lspush #8
> +		mov	r6, r6, lspull #24
> +		orr	r6, r6, r7, lspush #8
>  		stmia	r0!, {r3 - r6}
>  		subs	ip, ip, #16
>  		bpl	.Lcfu_3cpy8lp
>  
>  .Lcfu_3rem8lp:	tst	ip, #8
> -		movne	r3, r7, pull #24
> +		movne	r3, r7, lspull #24
>  		ldmneia	r1!, {r4, r7}			@ Shouldnt fault
> -		orrne	r3, r3, r4, push #8
> -		movne	r4, r4, pull #24
> -		orrne	r4, r4, r7, push #8
> +		orrne	r3, r3, r4, lspush #8
> +		movne	r4, r4, lspull #24
> +		orrne	r4, r4, r7, lspush #8
>  		stmneia	r0!, {r3 - r4}
>  		tst	ip, #4
> -		movne	r3, r7, pull #24
> +		movne	r3, r7, lspull #24
>  USER(	TUSER(	ldrne) r7, [r1], #4)			@ May fault
> -		orrne	r3, r3, r7, push #8
> +		orrne	r3, r3, r7, lspush #8
>  		strne	r3, [r0], #4
>  		ands	ip, ip, #3
>  		beq	.Lcfu_3fupi
> -- 
> 1.8.1.4
> 

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH v2] ARM: asm: rename logical shift macros push pull into lspush lspull
  2014-02-10 21:30   ` Nicolas Pitre
@ 2014-02-11 15:54     ` Dave Martin
  2014-02-11 15:59       ` Dave Martin
  2014-02-11 17:09       ` Nicolas Pitre
  0 siblings, 2 replies; 11+ messages in thread
From: Dave Martin @ 2014-02-11 15:54 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Feb 10, 2014 at 04:30:01PM -0500, Nicolas Pitre wrote:
> On Mon, 10 Feb 2014, Victor Kamensky wrote:
> 
> > Renames logical shift macros, 'push' and 'pull', defined in
> > arch/arm/include/asm/assembler.h, into 'lspush' and 'lspull'.
> 
> I don't have any fundamental objection to the idea, except maybe for the 
> actual names.  I just can't come up with anything better though.  

For consistency with the get_byte_ stuff, how about:

	push -> towards_byte_0
	pull -> from_byte_0

That may make the purpose a little clearer, too.

(Assuming I've got them the right way around...)

Cheers
---Dave

> Therefore...
> 
> Acked-by: Nicolas Pitre <nico@linaro.org>
> 
> > 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: Will Deacon <will.deacon@arm.com>
> > Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
> > ---
> >  arch/arm/include/asm/assembler.h      |   8 +-
> >  arch/arm/lib/copy_template.S          |  36 +++----
> >  arch/arm/lib/csumpartialcopygeneric.S |  96 ++++++++---------
> >  arch/arm/lib/io-readsl.S              |  12 +--
> >  arch/arm/lib/io-writesl.S             |  12 +--
> >  arch/arm/lib/memmove.S                |  36 +++----
> >  arch/arm/lib/uaccess.S                | 192 +++++++++++++++++-----------------
> >  7 files changed, 196 insertions(+), 196 deletions(-)
> > 
> > diff --git a/arch/arm/include/asm/assembler.h b/arch/arm/include/asm/assembler.h
> > index 5c22851..380ac4f 100644
> > --- a/arch/arm/include/asm/assembler.h
> > +++ b/arch/arm/include/asm/assembler.h
> > @@ -30,8 +30,8 @@
> >   * Endian independent macros for shifting bytes within registers.
> >   */
> >  #ifndef __ARMEB__
> > -#define pull            lsr
> > -#define push            lsl
> > +#define lspull          lsr
> > +#define lspush          lsl
> >  #define get_byte_0      lsl #0
> >  #define get_byte_1	lsr #8
> >  #define get_byte_2	lsr #16
> > @@ -41,8 +41,8 @@
> >  #define put_byte_2	lsl #16
> >  #define put_byte_3	lsl #24
> >  #else
> > -#define pull            lsl
> > -#define push            lsr
> > +#define lspull          lsl
> > +#define lspush          lsr
> >  #define get_byte_0	lsr #24
> >  #define get_byte_1	lsr #16
> >  #define get_byte_2	lsr #8
> > diff --git a/arch/arm/lib/copy_template.S b/arch/arm/lib/copy_template.S
> > index 805e3f8..3bc8eb8 100644
> > --- a/arch/arm/lib/copy_template.S
> > +++ b/arch/arm/lib/copy_template.S
> > @@ -197,24 +197,24 @@
> >  
> >  12:	PLD(	pld	[r1, #124]		)
> >  13:		ldr4w	r1, r4, r5, r6, r7, abort=19f
> > -		mov	r3, lr, pull #\pull
> > +		mov	r3, lr, lspull #\pull
> >  		subs	r2, r2, #32
> >  		ldr4w	r1, r8, r9, ip, lr, abort=19f
> > -		orr	r3, r3, r4, push #\push
> > -		mov	r4, r4, pull #\pull
> > -		orr	r4, r4, r5, push #\push
> > -		mov	r5, r5, pull #\pull
> > -		orr	r5, r5, r6, push #\push
> > -		mov	r6, r6, pull #\pull
> > -		orr	r6, r6, r7, push #\push
> > -		mov	r7, r7, pull #\pull
> > -		orr	r7, r7, r8, push #\push
> > -		mov	r8, r8, pull #\pull
> > -		orr	r8, r8, r9, push #\push
> > -		mov	r9, r9, pull #\pull
> > -		orr	r9, r9, ip, push #\push
> > -		mov	ip, ip, pull #\pull
> > -		orr	ip, ip, lr, push #\push
> > +		orr	r3, r3, r4, lspush #\push
> > +		mov	r4, r4, lspull #\pull
> > +		orr	r4, r4, r5, lspush #\push
> > +		mov	r5, r5, lspull #\pull
> > +		orr	r5, r5, r6, lspush #\push
> > +		mov	r6, r6, lspull #\pull
> > +		orr	r6, r6, r7, lspush #\push
> > +		mov	r7, r7, lspull #\pull
> > +		orr	r7, r7, r8, lspush #\push
> > +		mov	r8, r8, lspull #\pull
> > +		orr	r8, r8, r9, lspush #\push
> > +		mov	r9, r9, lspull #\pull
> > +		orr	r9, r9, ip, lspush #\push
> > +		mov	ip, ip, lspull #\pull
> > +		orr	ip, ip, lr, lspush #\push
> >  		str8w	r0, r3, r4, r5, r6, r7, r8, r9, ip, , abort=19f
> >  		bge	12b
> >  	PLD(	cmn	r2, #96			)
> > @@ -225,10 +225,10 @@
> >  14:		ands	ip, r2, #28
> >  		beq	16f
> >  
> > -15:		mov	r3, lr, pull #\pull
> > +15:		mov	r3, lr, lspull #\pull
> >  		ldr1w	r1, lr, abort=21f
> >  		subs	ip, ip, #4
> > -		orr	r3, r3, lr, push #\push
> > +		orr	r3, r3, lr, lspush #\push
> >  		str1w	r0, r3, abort=21f
> >  		bgt	15b
> >  	CALGN(	cmp	r2, #0			)
> > diff --git a/arch/arm/lib/csumpartialcopygeneric.S b/arch/arm/lib/csumpartialcopygeneric.S
> > index d620a5f..d6e742d 100644
> > --- a/arch/arm/lib/csumpartialcopygeneric.S
> > +++ b/arch/arm/lib/csumpartialcopygeneric.S
> > @@ -141,7 +141,7 @@ FN_ENTRY
> >  		tst	len, #2
> >  		mov	r5, r4, get_byte_0
> >  		beq	.Lexit
> > -		adcs	sum, sum, r4, push #16
> > +		adcs	sum, sum, r4, lspush #16
> >  		strb	r5, [dst], #1
> >  		mov	r5, r4, get_byte_1
> >  		strb	r5, [dst], #1
> > @@ -171,23 +171,23 @@ FN_ENTRY
> >  		cmp	ip, #2
> >  		beq	.Lsrc2_aligned
> >  		bhi	.Lsrc3_aligned
> > -		mov	r4, r5, pull #8		@ C = 0
> > +		mov	r4, r5, lspull #8		@ C = 0
> >  		bics	ip, len, #15
> >  		beq	2f
> >  1:		load4l	r5, r6, r7, r8
> > -		orr	r4, r4, r5, push #24
> > -		mov	r5, r5, pull #8
> > -		orr	r5, r5, r6, push #24
> > -		mov	r6, r6, pull #8
> > -		orr	r6, r6, r7, push #24
> > -		mov	r7, r7, pull #8
> > -		orr	r7, r7, r8, push #24
> > +		orr	r4, r4, r5, lspush #24
> > +		mov	r5, r5, lspull #8
> > +		orr	r5, r5, r6, lspush #24
> > +		mov	r6, r6, lspull #8
> > +		orr	r6, r6, r7, lspush #24
> > +		mov	r7, r7, lspull #8
> > +		orr	r7, r7, r8, lspush #24
> >  		stmia	dst!, {r4, r5, r6, r7}
> >  		adcs	sum, sum, r4
> >  		adcs	sum, sum, r5
> >  		adcs	sum, sum, r6
> >  		adcs	sum, sum, r7
> > -		mov	r4, r8, pull #8
> > +		mov	r4, r8, lspull #8
> >  		sub	ip, ip, #16
> >  		teq	ip, #0
> >  		bne	1b
> > @@ -196,50 +196,50 @@ FN_ENTRY
> >  		tst	ip, #8
> >  		beq	3f
> >  		load2l	r5, r6
> > -		orr	r4, r4, r5, push #24
> > -		mov	r5, r5, pull #8
> > -		orr	r5, r5, r6, push #24
> > +		orr	r4, r4, r5, lspush #24
> > +		mov	r5, r5, lspull #8
> > +		orr	r5, r5, r6, lspush #24
> >  		stmia	dst!, {r4, r5}
> >  		adcs	sum, sum, r4
> >  		adcs	sum, sum, r5
> > -		mov	r4, r6, pull #8
> > +		mov	r4, r6, lspull #8
> >  		tst	ip, #4
> >  		beq	4f
> >  3:		load1l	r5
> > -		orr	r4, r4, r5, push #24
> > +		orr	r4, r4, r5, lspush #24
> >  		str	r4, [dst], #4
> >  		adcs	sum, sum, r4
> > -		mov	r4, r5, pull #8
> > +		mov	r4, r5, lspull #8
> >  4:		ands	len, len, #3
> >  		beq	.Ldone
> >  		mov	r5, r4, get_byte_0
> >  		tst	len, #2
> >  		beq	.Lexit
> > -		adcs	sum, sum, r4, push #16
> > +		adcs	sum, sum, r4, lspush #16
> >  		strb	r5, [dst], #1
> >  		mov	r5, r4, get_byte_1
> >  		strb	r5, [dst], #1
> >  		mov	r5, r4, get_byte_2
> >  		b	.Lexit
> >  
> > -.Lsrc2_aligned:	mov	r4, r5, pull #16
> > +.Lsrc2_aligned:	mov	r4, r5, lspull #16
> >  		adds	sum, sum, #0
> >  		bics	ip, len, #15
> >  		beq	2f
> >  1:		load4l	r5, r6, r7, r8
> > -		orr	r4, r4, r5, push #16
> > -		mov	r5, r5, pull #16
> > -		orr	r5, r5, r6, push #16
> > -		mov	r6, r6, pull #16
> > -		orr	r6, r6, r7, push #16
> > -		mov	r7, r7, pull #16
> > -		orr	r7, r7, r8, push #16
> > +		orr	r4, r4, r5, lspush #16
> > +		mov	r5, r5, lspull #16
> > +		orr	r5, r5, r6, lspush #16
> > +		mov	r6, r6, lspull #16
> > +		orr	r6, r6, r7, lspush #16
> > +		mov	r7, r7, lspull #16
> > +		orr	r7, r7, r8, lspush #16
> >  		stmia	dst!, {r4, r5, r6, r7}
> >  		adcs	sum, sum, r4
> >  		adcs	sum, sum, r5
> >  		adcs	sum, sum, r6
> >  		adcs	sum, sum, r7
> > -		mov	r4, r8, pull #16
> > +		mov	r4, r8, lspull #16
> >  		sub	ip, ip, #16
> >  		teq	ip, #0
> >  		bne	1b
> > @@ -248,20 +248,20 @@ FN_ENTRY
> >  		tst	ip, #8
> >  		beq	3f
> >  		load2l	r5, r6
> > -		orr	r4, r4, r5, push #16
> > -		mov	r5, r5, pull #16
> > -		orr	r5, r5, r6, push #16
> > +		orr	r4, r4, r5, lspush #16
> > +		mov	r5, r5, lspull #16
> > +		orr	r5, r5, r6, lspush #16
> >  		stmia	dst!, {r4, r5}
> >  		adcs	sum, sum, r4
> >  		adcs	sum, sum, r5
> > -		mov	r4, r6, pull #16
> > +		mov	r4, r6, lspull #16
> >  		tst	ip, #4
> >  		beq	4f
> >  3:		load1l	r5
> > -		orr	r4, r4, r5, push #16
> > +		orr	r4, r4, r5, lspush #16
> >  		str	r4, [dst], #4
> >  		adcs	sum, sum, r4
> > -		mov	r4, r5, pull #16
> > +		mov	r4, r5, lspull #16
> >  4:		ands	len, len, #3
> >  		beq	.Ldone
> >  		mov	r5, r4, get_byte_0
> > @@ -276,24 +276,24 @@ FN_ENTRY
> >  		load1b	r5
> >  		b	.Lexit
> >  
> > -.Lsrc3_aligned:	mov	r4, r5, pull #24
> > +.Lsrc3_aligned:	mov	r4, r5, lspull #24
> >  		adds	sum, sum, #0
> >  		bics	ip, len, #15
> >  		beq	2f
> >  1:		load4l	r5, r6, r7, r8
> > -		orr	r4, r4, r5, push #8
> > -		mov	r5, r5, pull #24
> > -		orr	r5, r5, r6, push #8
> > -		mov	r6, r6, pull #24
> > -		orr	r6, r6, r7, push #8
> > -		mov	r7, r7, pull #24
> > -		orr	r7, r7, r8, push #8
> > +		orr	r4, r4, r5, lspush #8
> > +		mov	r5, r5, lspull #24
> > +		orr	r5, r5, r6, lspush #8
> > +		mov	r6, r6, lspull #24
> > +		orr	r6, r6, r7, lspush #8
> > +		mov	r7, r7, lspull #24
> > +		orr	r7, r7, r8, lspush #8
> >  		stmia	dst!, {r4, r5, r6, r7}
> >  		adcs	sum, sum, r4
> >  		adcs	sum, sum, r5
> >  		adcs	sum, sum, r6
> >  		adcs	sum, sum, r7
> > -		mov	r4, r8, pull #24
> > +		mov	r4, r8, lspull #24
> >  		sub	ip, ip, #16
> >  		teq	ip, #0
> >  		bne	1b
> > @@ -302,20 +302,20 @@ FN_ENTRY
> >  		tst	ip, #8
> >  		beq	3f
> >  		load2l	r5, r6
> > -		orr	r4, r4, r5, push #8
> > -		mov	r5, r5, pull #24
> > -		orr	r5, r5, r6, push #8
> > +		orr	r4, r4, r5, lspush #8
> > +		mov	r5, r5, lspull #24
> > +		orr	r5, r5, r6, lspush #8
> >  		stmia	dst!, {r4, r5}
> >  		adcs	sum, sum, r4
> >  		adcs	sum, sum, r5
> > -		mov	r4, r6, pull #24
> > +		mov	r4, r6, lspull #24
> >  		tst	ip, #4
> >  		beq	4f
> >  3:		load1l	r5
> > -		orr	r4, r4, r5, push #8
> > +		orr	r4, r4, r5, lspush #8
> >  		str	r4, [dst], #4
> >  		adcs	sum, sum, r4
> > -		mov	r4, r5, pull #24
> > +		mov	r4, r5, lspull #24
> >  4:		ands	len, len, #3
> >  		beq	.Ldone
> >  		mov	r5, r4, get_byte_0
> > @@ -326,7 +326,7 @@ FN_ENTRY
> >  		load1l	r4
> >  		mov	r5, r4, get_byte_0
> >  		strb	r5, [dst], #1
> > -		adcs	sum, sum, r4, push #24
> > +		adcs	sum, sum, r4, lspush #24
> >  		mov	r5, r4, get_byte_1
> >  		b	.Lexit
> >  FN_EXIT
> > diff --git a/arch/arm/lib/io-readsl.S b/arch/arm/lib/io-readsl.S
> > index 5fb97e7..7a74309 100644
> > --- a/arch/arm/lib/io-readsl.S
> > +++ b/arch/arm/lib/io-readsl.S
> > @@ -47,25 +47,25 @@ ENTRY(__raw_readsl)
> >  		strb	ip, [r1], #1
> >  
> >  4:		subs	r2, r2, #1
> > -		mov	ip, r3, pull #24
> > +		mov	ip, r3, lspull #24
> >  		ldrne	r3, [r0]
> > -		orrne	ip, ip, r3, push #8
> > +		orrne	ip, ip, r3, lspush #8
> >  		strne	ip, [r1], #4
> >  		bne	4b
> >  		b	8f
> >  
> >  5:		subs	r2, r2, #1
> > -		mov	ip, r3, pull #16
> > +		mov	ip, r3, lspull #16
> >  		ldrne	r3, [r0]
> > -		orrne	ip, ip, r3, push #16
> > +		orrne	ip, ip, r3, lspush #16
> >  		strne	ip, [r1], #4
> >  		bne	5b
> >  		b	7f
> >  
> >  6:		subs	r2, r2, #1
> > -		mov	ip, r3, pull #8
> > +		mov	ip, r3, lspull #8
> >  		ldrne	r3, [r0]
> > -		orrne	ip, ip, r3, push #24
> > +		orrne	ip, ip, r3, lspush #24
> >  		strne	ip, [r1], #4
> >  		bne	6b
> >  
> > diff --git a/arch/arm/lib/io-writesl.S b/arch/arm/lib/io-writesl.S
> > index 8d3b781..d0d104a 100644
> > --- a/arch/arm/lib/io-writesl.S
> > +++ b/arch/arm/lib/io-writesl.S
> > @@ -41,26 +41,26 @@ ENTRY(__raw_writesl)
> >  		blt	5f
> >  		bgt	6f
> >  
> > -4:		mov	ip, r3, pull #16
> > +4:		mov	ip, r3, lspull #16
> >  		ldr	r3, [r1], #4
> >  		subs	r2, r2, #1
> > -		orr	ip, ip, r3, push #16
> > +		orr	ip, ip, r3, lspush #16
> >  		str	ip, [r0]
> >  		bne	4b
> >  		mov	pc, lr
> >  
> > -5:		mov	ip, r3, pull #8
> > +5:		mov	ip, r3, lspull #8
> >  		ldr	r3, [r1], #4
> >  		subs	r2, r2, #1
> > -		orr	ip, ip, r3, push #24
> > +		orr	ip, ip, r3, lspush #24
> >  		str	ip, [r0]
> >  		bne	5b
> >  		mov	pc, lr
> >  
> > -6:		mov	ip, r3, pull #24
> > +6:		mov	ip, r3, lspull #24
> >  		ldr	r3, [r1], #4
> >  		subs	r2, r2, #1
> > -		orr	ip, ip, r3, push #8
> > +		orr	ip, ip, r3, lspush #8
> >  		str	ip, [r0]
> >  		bne	6b
> >  		mov	pc, lr
> > diff --git a/arch/arm/lib/memmove.S b/arch/arm/lib/memmove.S
> > index 938fc14..d1fc0c0 100644
> > --- a/arch/arm/lib/memmove.S
> > +++ b/arch/arm/lib/memmove.S
> > @@ -147,24 +147,24 @@ ENTRY(memmove)
> >  
> >  12:	PLD(	pld	[r1, #-128]		)
> >  13:		ldmdb   r1!, {r7, r8, r9, ip}
> > -		mov     lr, r3, push #\push
> > +		mov     lr, r3, lspush #\push
> >  		subs    r2, r2, #32
> >  		ldmdb   r1!, {r3, r4, r5, r6}
> > -		orr     lr, lr, ip, pull #\pull
> > -		mov     ip, ip, push #\push
> > -		orr     ip, ip, r9, pull #\pull
> > -		mov     r9, r9, push #\push
> > -		orr     r9, r9, r8, pull #\pull
> > -		mov     r8, r8, push #\push
> > -		orr     r8, r8, r7, pull #\pull
> > -		mov     r7, r7, push #\push
> > -		orr     r7, r7, r6, pull #\pull
> > -		mov     r6, r6, push #\push
> > -		orr     r6, r6, r5, pull #\pull
> > -		mov     r5, r5, push #\push
> > -		orr     r5, r5, r4, pull #\pull
> > -		mov     r4, r4, push #\push
> > -		orr     r4, r4, r3, pull #\pull
> > +		orr     lr, lr, ip, lspull #\pull
> > +		mov     ip, ip, lspush #\push
> > +		orr     ip, ip, r9, lspull #\pull
> > +		mov     r9, r9, lspush #\push
> > +		orr     r9, r9, r8, lspull #\pull
> > +		mov     r8, r8, lspush #\push
> > +		orr     r8, r8, r7, lspull #\pull
> > +		mov     r7, r7, lspush #\push
> > +		orr     r7, r7, r6, lspull #\pull
> > +		mov     r6, r6, lspush #\push
> > +		orr     r6, r6, r5, lspull #\pull
> > +		mov     r5, r5, lspush #\push
> > +		orr     r5, r5, r4, lspull #\pull
> > +		mov     r4, r4, lspush #\push
> > +		orr     r4, r4, r3, lspull #\pull
> >  		stmdb   r0!, {r4 - r9, ip, lr}
> >  		bge	12b
> >  	PLD(	cmn	r2, #96			)
> > @@ -175,10 +175,10 @@ ENTRY(memmove)
> >  14:		ands	ip, r2, #28
> >  		beq	16f
> >  
> > -15:		mov     lr, r3, push #\push
> > +15:		mov     lr, r3, lspush #\push
> >  		ldr	r3, [r1, #-4]!
> >  		subs	ip, ip, #4
> > -		orr	lr, lr, r3, pull #\pull
> > +		orr	lr, lr, r3, lspull #\pull
> >  		str	lr, [r0, #-4]!
> >  		bgt	15b
> >  	CALGN(	cmp	r2, #0			)
> > diff --git a/arch/arm/lib/uaccess.S b/arch/arm/lib/uaccess.S
> > index 5c908b1..e505209 100644
> > --- a/arch/arm/lib/uaccess.S
> > +++ b/arch/arm/lib/uaccess.S
> > @@ -117,9 +117,9 @@ USER(	TUSER(	strgtb) r3, [r0], #1)			@ May fault
> >  .Lc2u_1fupi:	subs	r2, r2, #4
> >  		addmi	ip, r2, #4
> >  		bmi	.Lc2u_1nowords
> > -		mov	r3, r7, pull #8
> > +		mov	r3, r7, lspull #8
> >  		ldr	r7, [r1], #4
> > -		orr	r3, r3, r7, push #24
> > +		orr	r3, r3, r7, lspush #24
> >  USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
> >  		mov	ip, r0, lsl #32 - PAGE_SHIFT
> >  		rsb	ip, ip, #0
> > @@ -131,30 +131,30 @@ USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
> >  		subs	ip, ip, #16
> >  		blt	.Lc2u_1rem8lp
> >  
> > -.Lc2u_1cpy8lp:	mov	r3, r7, pull #8
> > +.Lc2u_1cpy8lp:	mov	r3, r7, lspull #8
> >  		ldmia	r1!, {r4 - r7}
> >  		subs	ip, ip, #16
> > -		orr	r3, r3, r4, push #24
> > -		mov	r4, r4, pull #8
> > -		orr	r4, r4, r5, push #24
> > -		mov	r5, r5, pull #8
> > -		orr	r5, r5, r6, push #24
> > -		mov	r6, r6, pull #8
> > -		orr	r6, r6, r7, push #24
> > +		orr	r3, r3, r4, lspush #24
> > +		mov	r4, r4, lspull #8
> > +		orr	r4, r4, r5, lspush #24
> > +		mov	r5, r5, lspull #8
> > +		orr	r5, r5, r6, lspush #24
> > +		mov	r6, r6, lspull #8
> > +		orr	r6, r6, r7, lspush #24
> >  		stmia	r0!, {r3 - r6}			@ Shouldnt fault
> >  		bpl	.Lc2u_1cpy8lp
> >  
> >  .Lc2u_1rem8lp:	tst	ip, #8
> > -		movne	r3, r7, pull #8
> > +		movne	r3, r7, lspull #8
> >  		ldmneia	r1!, {r4, r7}
> > -		orrne	r3, r3, r4, push #24
> > -		movne	r4, r4, pull #8
> > -		orrne	r4, r4, r7, push #24
> > +		orrne	r3, r3, r4, lspush #24
> > +		movne	r4, r4, lspull #8
> > +		orrne	r4, r4, r7, lspush #24
> >  		stmneia	r0!, {r3 - r4}			@ Shouldnt fault
> >  		tst	ip, #4
> > -		movne	r3, r7, pull #8
> > +		movne	r3, r7, lspull #8
> >  		ldrne	r7, [r1], #4
> > -		orrne	r3, r3, r7, push #24
> > +		orrne	r3, r3, r7, lspush #24
> >  	TUSER(	strne) r3, [r0], #4			@ Shouldnt fault
> >  		ands	ip, ip, #3
> >  		beq	.Lc2u_1fupi
> > @@ -172,9 +172,9 @@ USER(	TUSER(	strgtb) r3, [r0], #1)			@ May fault
> >  .Lc2u_2fupi:	subs	r2, r2, #4
> >  		addmi	ip, r2, #4
> >  		bmi	.Lc2u_2nowords
> > -		mov	r3, r7, pull #16
> > +		mov	r3, r7, lspull #16
> >  		ldr	r7, [r1], #4
> > -		orr	r3, r3, r7, push #16
> > +		orr	r3, r3, r7, lspush #16
> >  USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
> >  		mov	ip, r0, lsl #32 - PAGE_SHIFT
> >  		rsb	ip, ip, #0
> > @@ -186,30 +186,30 @@ USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
> >  		subs	ip, ip, #16
> >  		blt	.Lc2u_2rem8lp
> >  
> > -.Lc2u_2cpy8lp:	mov	r3, r7, pull #16
> > +.Lc2u_2cpy8lp:	mov	r3, r7, lspull #16
> >  		ldmia	r1!, {r4 - r7}
> >  		subs	ip, ip, #16
> > -		orr	r3, r3, r4, push #16
> > -		mov	r4, r4, pull #16
> > -		orr	r4, r4, r5, push #16
> > -		mov	r5, r5, pull #16
> > -		orr	r5, r5, r6, push #16
> > -		mov	r6, r6, pull #16
> > -		orr	r6, r6, r7, push #16
> > +		orr	r3, r3, r4, lspush #16
> > +		mov	r4, r4, lspull #16
> > +		orr	r4, r4, r5, lspush #16
> > +		mov	r5, r5, lspull #16
> > +		orr	r5, r5, r6, lspush #16
> > +		mov	r6, r6, lspull #16
> > +		orr	r6, r6, r7, lspush #16
> >  		stmia	r0!, {r3 - r6}			@ Shouldnt fault
> >  		bpl	.Lc2u_2cpy8lp
> >  
> >  .Lc2u_2rem8lp:	tst	ip, #8
> > -		movne	r3, r7, pull #16
> > +		movne	r3, r7, lspull #16
> >  		ldmneia	r1!, {r4, r7}
> > -		orrne	r3, r3, r4, push #16
> > -		movne	r4, r4, pull #16
> > -		orrne	r4, r4, r7, push #16
> > +		orrne	r3, r3, r4, lspush #16
> > +		movne	r4, r4, lspull #16
> > +		orrne	r4, r4, r7, lspush #16
> >  		stmneia	r0!, {r3 - r4}			@ Shouldnt fault
> >  		tst	ip, #4
> > -		movne	r3, r7, pull #16
> > +		movne	r3, r7, lspull #16
> >  		ldrne	r7, [r1], #4
> > -		orrne	r3, r3, r7, push #16
> > +		orrne	r3, r3, r7, lspush #16
> >  	TUSER(	strne) r3, [r0], #4			@ Shouldnt fault
> >  		ands	ip, ip, #3
> >  		beq	.Lc2u_2fupi
> > @@ -227,9 +227,9 @@ USER(	TUSER(	strgtb) r3, [r0], #1)			@ May fault
> >  .Lc2u_3fupi:	subs	r2, r2, #4
> >  		addmi	ip, r2, #4
> >  		bmi	.Lc2u_3nowords
> > -		mov	r3, r7, pull #24
> > +		mov	r3, r7, lspull #24
> >  		ldr	r7, [r1], #4
> > -		orr	r3, r3, r7, push #8
> > +		orr	r3, r3, r7, lspush #8
> >  USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
> >  		mov	ip, r0, lsl #32 - PAGE_SHIFT
> >  		rsb	ip, ip, #0
> > @@ -241,30 +241,30 @@ USER(	TUSER(	str)	r3, [r0], #4)			@ May fault
> >  		subs	ip, ip, #16
> >  		blt	.Lc2u_3rem8lp
> >  
> > -.Lc2u_3cpy8lp:	mov	r3, r7, pull #24
> > +.Lc2u_3cpy8lp:	mov	r3, r7, lspull #24
> >  		ldmia	r1!, {r4 - r7}
> >  		subs	ip, ip, #16
> > -		orr	r3, r3, r4, push #8
> > -		mov	r4, r4, pull #24
> > -		orr	r4, r4, r5, push #8
> > -		mov	r5, r5, pull #24
> > -		orr	r5, r5, r6, push #8
> > -		mov	r6, r6, pull #24
> > -		orr	r6, r6, r7, push #8
> > +		orr	r3, r3, r4, lspush #8
> > +		mov	r4, r4, lspull #24
> > +		orr	r4, r4, r5, lspush #8
> > +		mov	r5, r5, lspull #24
> > +		orr	r5, r5, r6, lspush #8
> > +		mov	r6, r6, lspull #24
> > +		orr	r6, r6, r7, lspush #8
> >  		stmia	r0!, {r3 - r6}			@ Shouldnt fault
> >  		bpl	.Lc2u_3cpy8lp
> >  
> >  .Lc2u_3rem8lp:	tst	ip, #8
> > -		movne	r3, r7, pull #24
> > +		movne	r3, r7, lspull #24
> >  		ldmneia	r1!, {r4, r7}
> > -		orrne	r3, r3, r4, push #8
> > -		movne	r4, r4, pull #24
> > -		orrne	r4, r4, r7, push #8
> > +		orrne	r3, r3, r4, lspush #8
> > +		movne	r4, r4, lspull #24
> > +		orrne	r4, r4, r7, lspush #8
> >  		stmneia	r0!, {r3 - r4}			@ Shouldnt fault
> >  		tst	ip, #4
> > -		movne	r3, r7, pull #24
> > +		movne	r3, r7, lspull #24
> >  		ldrne	r7, [r1], #4
> > -		orrne	r3, r3, r7, push #8
> > +		orrne	r3, r3, r7, lspush #8
> >  	TUSER(	strne) r3, [r0], #4			@ Shouldnt fault
> >  		ands	ip, ip, #3
> >  		beq	.Lc2u_3fupi
> > @@ -382,9 +382,9 @@ USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
> >  .Lcfu_1fupi:	subs	r2, r2, #4
> >  		addmi	ip, r2, #4
> >  		bmi	.Lcfu_1nowords
> > -		mov	r3, r7, pull #8
> > +		mov	r3, r7, lspull #8
> >  USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
> > -		orr	r3, r3, r7, push #24
> > +		orr	r3, r3, r7, lspush #24
> >  		str	r3, [r0], #4
> >  		mov	ip, r1, lsl #32 - PAGE_SHIFT
> >  		rsb	ip, ip, #0
> > @@ -396,30 +396,30 @@ USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
> >  		subs	ip, ip, #16
> >  		blt	.Lcfu_1rem8lp
> >  
> > -.Lcfu_1cpy8lp:	mov	r3, r7, pull #8
> > +.Lcfu_1cpy8lp:	mov	r3, r7, lspull #8
> >  		ldmia	r1!, {r4 - r7}			@ Shouldnt fault
> >  		subs	ip, ip, #16
> > -		orr	r3, r3, r4, push #24
> > -		mov	r4, r4, pull #8
> > -		orr	r4, r4, r5, push #24
> > -		mov	r5, r5, pull #8
> > -		orr	r5, r5, r6, push #24
> > -		mov	r6, r6, pull #8
> > -		orr	r6, r6, r7, push #24
> > +		orr	r3, r3, r4, lspush #24
> > +		mov	r4, r4, lspull #8
> > +		orr	r4, r4, r5, lspush #24
> > +		mov	r5, r5, lspull #8
> > +		orr	r5, r5, r6, lspush #24
> > +		mov	r6, r6, lspull #8
> > +		orr	r6, r6, r7, lspush #24
> >  		stmia	r0!, {r3 - r6}
> >  		bpl	.Lcfu_1cpy8lp
> >  
> >  .Lcfu_1rem8lp:	tst	ip, #8
> > -		movne	r3, r7, pull #8
> > +		movne	r3, r7, lspull #8
> >  		ldmneia	r1!, {r4, r7}			@ Shouldnt fault
> > -		orrne	r3, r3, r4, push #24
> > -		movne	r4, r4, pull #8
> > -		orrne	r4, r4, r7, push #24
> > +		orrne	r3, r3, r4, lspush #24
> > +		movne	r4, r4, lspull #8
> > +		orrne	r4, r4, r7, lspush #24
> >  		stmneia	r0!, {r3 - r4}
> >  		tst	ip, #4
> > -		movne	r3, r7, pull #8
> > +		movne	r3, r7, lspull #8
> >  USER(	TUSER(	ldrne) r7, [r1], #4)			@ May fault
> > -		orrne	r3, r3, r7, push #24
> > +		orrne	r3, r3, r7, lspush #24
> >  		strne	r3, [r0], #4
> >  		ands	ip, ip, #3
> >  		beq	.Lcfu_1fupi
> > @@ -437,9 +437,9 @@ USER(	TUSER(	ldrne) r7, [r1], #4)			@ May fault
> >  .Lcfu_2fupi:	subs	r2, r2, #4
> >  		addmi	ip, r2, #4
> >  		bmi	.Lcfu_2nowords
> > -		mov	r3, r7, pull #16
> > +		mov	r3, r7, lspull #16
> >  USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
> > -		orr	r3, r3, r7, push #16
> > +		orr	r3, r3, r7, lspush #16
> >  		str	r3, [r0], #4
> >  		mov	ip, r1, lsl #32 - PAGE_SHIFT
> >  		rsb	ip, ip, #0
> > @@ -452,30 +452,30 @@ USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
> >  		blt	.Lcfu_2rem8lp
> >  
> >  
> > -.Lcfu_2cpy8lp:	mov	r3, r7, pull #16
> > +.Lcfu_2cpy8lp:	mov	r3, r7, lspull #16
> >  		ldmia	r1!, {r4 - r7}			@ Shouldnt fault
> >  		subs	ip, ip, #16
> > -		orr	r3, r3, r4, push #16
> > -		mov	r4, r4, pull #16
> > -		orr	r4, r4, r5, push #16
> > -		mov	r5, r5, pull #16
> > -		orr	r5, r5, r6, push #16
> > -		mov	r6, r6, pull #16
> > -		orr	r6, r6, r7, push #16
> > +		orr	r3, r3, r4, lspush #16
> > +		mov	r4, r4, lspull #16
> > +		orr	r4, r4, r5, lspush #16
> > +		mov	r5, r5, lspull #16
> > +		orr	r5, r5, r6, lspush #16
> > +		mov	r6, r6, lspull #16
> > +		orr	r6, r6, r7, lspush #16
> >  		stmia	r0!, {r3 - r6}
> >  		bpl	.Lcfu_2cpy8lp
> >  
> >  .Lcfu_2rem8lp:	tst	ip, #8
> > -		movne	r3, r7, pull #16
> > +		movne	r3, r7, lspull #16
> >  		ldmneia	r1!, {r4, r7}			@ Shouldnt fault
> > -		orrne	r3, r3, r4, push #16
> > -		movne	r4, r4, pull #16
> > -		orrne	r4, r4, r7, push #16
> > +		orrne	r3, r3, r4, lspush #16
> > +		movne	r4, r4, lspull #16
> > +		orrne	r4, r4, r7, lspush #16
> >  		stmneia	r0!, {r3 - r4}
> >  		tst	ip, #4
> > -		movne	r3, r7, pull #16
> > +		movne	r3, r7, lspull #16
> >  USER(	TUSER(	ldrne) r7, [r1], #4)			@ May fault
> > -		orrne	r3, r3, r7, push #16
> > +		orrne	r3, r3, r7, lspush #16
> >  		strne	r3, [r0], #4
> >  		ands	ip, ip, #3
> >  		beq	.Lcfu_2fupi
> > @@ -493,9 +493,9 @@ USER(	TUSER(	ldrgtb) r3, [r1], #0)			@ May fault
> >  .Lcfu_3fupi:	subs	r2, r2, #4
> >  		addmi	ip, r2, #4
> >  		bmi	.Lcfu_3nowords
> > -		mov	r3, r7, pull #24
> > +		mov	r3, r7, lspull #24
> >  USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
> > -		orr	r3, r3, r7, push #8
> > +		orr	r3, r3, r7, lspush #8
> >  		str	r3, [r0], #4
> >  		mov	ip, r1, lsl #32 - PAGE_SHIFT
> >  		rsb	ip, ip, #0
> > @@ -507,30 +507,30 @@ USER(	TUSER(	ldr)	r7, [r1], #4)			@ May fault
> >  		subs	ip, ip, #16
> >  		blt	.Lcfu_3rem8lp
> >  
> > -.Lcfu_3cpy8lp:	mov	r3, r7, pull #24
> > +.Lcfu_3cpy8lp:	mov	r3, r7, lspull #24
> >  		ldmia	r1!, {r4 - r7}			@ Shouldnt fault
> > -		orr	r3, r3, r4, push #8
> > -		mov	r4, r4, pull #24
> > -		orr	r4, r4, r5, push #8
> > -		mov	r5, r5, pull #24
> > -		orr	r5, r5, r6, push #8
> > -		mov	r6, r6, pull #24
> > -		orr	r6, r6, r7, push #8
> > +		orr	r3, r3, r4, lspush #8
> > +		mov	r4, r4, lspull #24
> > +		orr	r4, r4, r5, lspush #8
> > +		mov	r5, r5, lspull #24
> > +		orr	r5, r5, r6, lspush #8
> > +		mov	r6, r6, lspull #24
> > +		orr	r6, r6, r7, lspush #8
> >  		stmia	r0!, {r3 - r6}
> >  		subs	ip, ip, #16
> >  		bpl	.Lcfu_3cpy8lp
> >  
> >  .Lcfu_3rem8lp:	tst	ip, #8
> > -		movne	r3, r7, pull #24
> > +		movne	r3, r7, lspull #24
> >  		ldmneia	r1!, {r4, r7}			@ Shouldnt fault
> > -		orrne	r3, r3, r4, push #8
> > -		movne	r4, r4, pull #24
> > -		orrne	r4, r4, r7, push #8
> > +		orrne	r3, r3, r4, lspush #8
> > +		movne	r4, r4, lspull #24
> > +		orrne	r4, r4, r7, lspush #8
> >  		stmneia	r0!, {r3 - r4}
> >  		tst	ip, #4
> > -		movne	r3, r7, pull #24
> > +		movne	r3, r7, lspull #24
> >  USER(	TUSER(	ldrne) r7, [r1], #4)			@ May fault
> > -		orrne	r3, r3, r7, push #8
> > +		orrne	r3, r3, r7, lspush #8
> >  		strne	r3, [r0], #4
> >  		ands	ip, ip, #3
> >  		beq	.Lcfu_3fupi
> > -- 
> > 1.8.1.4
> > 
> 
> _______________________________________________
> linaro-kernel mailing list
> linaro-kernel at lists.linaro.org
> http://lists.linaro.org/mailman/listinfo/linaro-kernel

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH v2] ARM: asm: rename logical shift macros push pull into lspush lspull
  2014-02-11 15:54     ` Dave Martin
@ 2014-02-11 15:59       ` Dave Martin
  2014-02-11 17:09       ` Nicolas Pitre
  1 sibling, 0 replies; 11+ messages in thread
From: Dave Martin @ 2014-02-11 15:59 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Feb 11, 2014 at 03:54:37PM +0000, Dave Martin wrote:
> On Mon, Feb 10, 2014 at 04:30:01PM -0500, Nicolas Pitre wrote:
> > On Mon, 10 Feb 2014, Victor Kamensky wrote:
> > 
> > > Renames logical shift macros, 'push' and 'pull', defined in
> > > arch/arm/include/asm/assembler.h, into 'lspush' and 'lspull'.
> > 
> > I don't have any fundamental objection to the idea, except maybe for the 
> > actual names.  I just can't come up with anything better though.  
> 
> For consistency with the get_byte_ stuff, how about:
> 
> 	push -> towards_byte_0
> 	pull -> from_byte_0
> 
> That may make the purpose a little clearer, too.
> 
> (Assuming I've got them the right way around...)

(Actually, I did get it the wrong way round by the look of it.
But you get the general idea.)

Cheers
---Dave

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH v2] ARM: asm: rename logical shift macros push pull into lspush lspull
  2014-02-11 15:54     ` Dave Martin
  2014-02-11 15:59       ` Dave Martin
@ 2014-02-11 17:09       ` Nicolas Pitre
  2014-02-11 17:37         ` Dave Martin
  1 sibling, 1 reply; 11+ messages in thread
From: Nicolas Pitre @ 2014-02-11 17:09 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, 11 Feb 2014, Dave Martin wrote:

> On Mon, Feb 10, 2014 at 04:30:01PM -0500, Nicolas Pitre wrote:
> > On Mon, 10 Feb 2014, Victor Kamensky wrote:
> > 
> > > Renames logical shift macros, 'push' and 'pull', defined in
> > > arch/arm/include/asm/assembler.h, into 'lspush' and 'lspull'.
> > 
> > I don't have any fundamental objection to the idea, except maybe for the 
> > actual names.  I just can't come up with anything better though.  
> 
> For consistency with the get_byte_ stuff, how about:
> 
> 	push -> towards_byte_0
> 	pull -> from_byte_0
> 
> That may make the purpose a little clearer, too.

I don't know if

	mov	r0, r1, from_byte_0 #8

is that much clearer though.

> (Assuming I've got them the right way around...)

As you later noticed you got it wrong.  :-)
Most likely because "full from" and "push towards" are common english 
constructs.


Nicolas

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH v2] ARM: asm: rename logical shift macros push pull into lspush lspull
  2014-02-11 17:09       ` Nicolas Pitre
@ 2014-02-11 17:37         ` Dave Martin
  2014-02-11 17:58           ` Nicolas Pitre
  0 siblings, 1 reply; 11+ messages in thread
From: Dave Martin @ 2014-02-11 17:37 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Feb 11, 2014 at 12:09:35PM -0500, Nicolas Pitre wrote:
> On Tue, 11 Feb 2014, Dave Martin wrote:
> 
> > On Mon, Feb 10, 2014 at 04:30:01PM -0500, Nicolas Pitre wrote:
> > > On Mon, 10 Feb 2014, Victor Kamensky wrote:
> > > 
> > > > Renames logical shift macros, 'push' and 'pull', defined in
> > > > arch/arm/include/asm/assembler.h, into 'lspush' and 'lspull'.
> > > 
> > > I don't have any fundamental objection to the idea, except maybe for the 
> > > actual names.  I just can't come up with anything better though.  
> > 
> > For consistency with the get_byte_ stuff, how about:
> > 
> > 	push -> towards_byte_0
> > 	pull -> from_byte_0
> > 
> > That may make the purpose a little clearer, too.
> 
> I don't know if
> 
> 	mov	r0, r1, from_byte_0 #8
> 
> is that much clearer though.
> 
> > (Assuming I've got them the right way around...)
> 
> As you later noticed you got it wrong.  :-)
> Most likely because "full from" and "push towards" are common english 
> constructs.

No more so than "pull towards" and "push from".

I'll blame it on the fact that the get_byte_ macros have wrong-
endian numbering, which I didn't look at carefully enough ;)

But I think we proved that my suggestion didn't really make things
easier to understand...

Cheers
---Dave

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH v2] ARM: asm: rename logical shift macros push pull into lspush lspull
  2014-02-11 17:37         ` Dave Martin
@ 2014-02-11 17:58           ` Nicolas Pitre
  2014-02-11 19:36             ` Victor Kamensky
  0 siblings, 1 reply; 11+ messages in thread
From: Nicolas Pitre @ 2014-02-11 17:58 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, 11 Feb 2014, Dave Martin wrote:

> On Tue, Feb 11, 2014 at 12:09:35PM -0500, Nicolas Pitre wrote:
> > On Tue, 11 Feb 2014, Dave Martin wrote:
> > 
> > > On Mon, Feb 10, 2014 at 04:30:01PM -0500, Nicolas Pitre wrote:
> > > > On Mon, 10 Feb 2014, Victor Kamensky wrote:
> > > > 
> > > > > Renames logical shift macros, 'push' and 'pull', defined in
> > > > > arch/arm/include/asm/assembler.h, into 'lspush' and 'lspull'.
> > > > 
> > > > I don't have any fundamental objection to the idea, except maybe for the 
> > > > actual names.  I just can't come up with anything better though.  
> > > 
> > > For consistency with the get_byte_ stuff, how about:
> > > 
> > > 	push -> towards_byte_0
> > > 	pull -> from_byte_0
> > > 
> > > That may make the purpose a little clearer, too.
> > 
> > I don't know if
> > 
> > 	mov	r0, r1, from_byte_0 #8
> > 
> > is that much clearer though.
> > 
> > > (Assuming I've got them the right way around...)
> > 
> > As you later noticed you got it wrong.  :-)
> > Most likely because "full from" and "push towards" are common english 
> > constructs.
> 
> No more so than "pull towards" and "push from".

OK.  I'll trust you on that account.

> I'll blame it on the fact that the get_byte_ macros have wrong-
> endian numbering, which I didn't look at carefully enough ;)
> 
> But I think we proved that my suggestion didn't really make things
> easier to understand...

What about:

	push -> next
	pull -> prev

?

That would make:

	mov	r0, r1, next #8


Nicolas

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH v2] ARM: asm: rename logical shift macros push pull into lspush lspull
  2014-02-11 17:58           ` Nicolas Pitre
@ 2014-02-11 19:36             ` Victor Kamensky
  2014-02-11 19:52               ` Victor Kamensky
  0 siblings, 1 reply; 11+ messages in thread
From: Victor Kamensky @ 2014-02-11 19:36 UTC (permalink / raw)
  To: linux-arm-kernel

On 11 February 2014 09:58, Nicolas Pitre <nicolas.pitre@linaro.org> wrote:
> On Tue, 11 Feb 2014, Dave Martin wrote:
>
>> On Tue, Feb 11, 2014 at 12:09:35PM -0500, Nicolas Pitre wrote:
>> > On Tue, 11 Feb 2014, Dave Martin wrote:
>> >
>> > > On Mon, Feb 10, 2014 at 04:30:01PM -0500, Nicolas Pitre wrote:
>> > > > On Mon, 10 Feb 2014, Victor Kamensky wrote:
>> > > >
>> > > > > Renames logical shift macros, 'push' and 'pull', defined in
>> > > > > arch/arm/include/asm/assembler.h, into 'lspush' and 'lspull'.
>> > > >
>> > > > I don't have any fundamental objection to the idea, except maybe for the
>> > > > actual names.  I just can't come up with anything better though.
>> > >
>> > > For consistency with the get_byte_ stuff, how about:
>> > >
>> > >   push -> towards_byte_0
>> > >   pull -> from_byte_0
>> > >
>> > > That may make the purpose a little clearer, too.
>> >
>> > I don't know if
>> >
>> >     mov     r0, r1, from_byte_0 #8
>> >
>> > is that much clearer though.
>> >
>> > > (Assuming I've got them the right way around...)
>> >
>> > As you later noticed you got it wrong.  :-)
>> > Most likely because "full from" and "push towards" are common english
>> > constructs.
>>
>> No more so than "pull towards" and "push from".
>
> OK.  I'll trust you on that account.
>
>> I'll blame it on the fact that the get_byte_ macros have wrong-
>> endian numbering, which I didn't look at carefully enough ;)
>>
>> But I think we proved that my suggestion didn't really make things
>> easier to understand...
>
> What about:
>
>         push -> next
>         pull -> prev
>
> ?
>
> That would make:
>
>         mov     r0, r1, next #8

I am not native English speaker, so subtle details of your
discussion go above my head :). For me those tokens
were just symbols with specific meaning of logical shifts
and selected endianness. I'll do as you decide. Quick
grep over .S files under arch/arm seems 'next' and 'prev'
will be OK and I did build that confirms that.

One nit/question though: there are some cases where
'push' and 'pull' macros were used in macros and macro
parameters were also called 'push' and 'pull'. I.e something
like this:

mov     r3, lr, pull #\pull

with rename 'pull' to 'lspull' I did not bother to rename
macro parameters because they are separate, have
just local context and 'lspull' is close to 'pull'. Resulting
proposed diff was:
-               mov     r3, lr, pull #\pull
+               mov     r3, lr, lspull #\pull

I assume that if we change 'push -> next' and 'pull -> prev' I
will need to rename macro parameters in the same way.
So it will be:
+               mov     r3, lr, prev #\prev
Is it correct?

Thanks,
Victor

>
> Nicolas

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH v2] ARM: asm: rename logical shift macros push pull into lspush lspull
  2014-02-11 19:36             ` Victor Kamensky
@ 2014-02-11 19:52               ` Victor Kamensky
  2014-02-11 20:31                 ` Nicolas Pitre
  0 siblings, 1 reply; 11+ messages in thread
From: Victor Kamensky @ 2014-02-11 19:52 UTC (permalink / raw)
  To: linux-arm-kernel

On 11 February 2014 11:36, Victor Kamensky <victor.kamensky@linaro.org> wrote:
> On 11 February 2014 09:58, Nicolas Pitre <nicolas.pitre@linaro.org> wrote:
>> On Tue, 11 Feb 2014, Dave Martin wrote:
>>
>>> On Tue, Feb 11, 2014 at 12:09:35PM -0500, Nicolas Pitre wrote:
>>> > On Tue, 11 Feb 2014, Dave Martin wrote:
>>> >
>>> > > On Mon, Feb 10, 2014 at 04:30:01PM -0500, Nicolas Pitre wrote:
>>> > > > On Mon, 10 Feb 2014, Victor Kamensky wrote:
>>> > > >
>>> > > > > Renames logical shift macros, 'push' and 'pull', defined in
>>> > > > > arch/arm/include/asm/assembler.h, into 'lspush' and 'lspull'.
>>> > > >
>>> > > > I don't have any fundamental objection to the idea, except maybe for the
>>> > > > actual names.  I just can't come up with anything better though.
>>> > >
>>> > > For consistency with the get_byte_ stuff, how about:
>>> > >
>>> > >   push -> towards_byte_0
>>> > >   pull -> from_byte_0
>>> > >
>>> > > That may make the purpose a little clearer, too.
>>> >
>>> > I don't know if
>>> >
>>> >     mov     r0, r1, from_byte_0 #8
>>> >
>>> > is that much clearer though.
>>> >
>>> > > (Assuming I've got them the right way around...)
>>> >
>>> > As you later noticed you got it wrong.  :-)
>>> > Most likely because "full from" and "push towards" are common english
>>> > constructs.
>>>
>>> No more so than "pull towards" and "push from".
>>
>> OK.  I'll trust you on that account.
>>
>>> I'll blame it on the fact that the get_byte_ macros have wrong-
>>> endian numbering, which I didn't look at carefully enough ;)
>>>
>>> But I think we proved that my suggestion didn't really make things
>>> easier to understand...
>>
>> What about:
>>
>>         push -> next
>>         pull -> prev
>>
>> ?
>>
>> That would make:
>>
>>         mov     r0, r1, next #8
>
> I am not native English speaker, so subtle details of your
> discussion go above my head :). For me those tokens
> were just symbols with specific meaning of logical shifts
> and selected endianness. I'll do as you decide. Quick
> grep over .S files under arch/arm seems 'next' and 'prev'
> will be OK and I did build that confirms that.

Forgot to mention one detail. There is a case in
./nwfpe/entry.S file where 'next' is used as label name. I guess,
it should work if macro would rename it into lsl or lsr label
name. And/or we could rename the label.

Wondering ... whether idea to have those macros
name in way that coincides with English words would lead
us to some conflict earlier or latter. With this respect lspull
and lspush IMHO are somewhat better because they are
sort of abbreviations.

Thanks,
Victor

> One nit/question though: there are some cases where
> 'push' and 'pull' macros were used in macros and macro
> parameters were also called 'push' and 'pull'. I.e something
> like this:
>
> mov     r3, lr, pull #\pull
>
> with rename 'pull' to 'lspull' I did not bother to rename
> macro parameters because they are separate, have
> just local context and 'lspull' is close to 'pull'. Resulting
> proposed diff was:
> -               mov     r3, lr, pull #\pull
> +               mov     r3, lr, lspull #\pull
>
> I assume that if we change 'push -> next' and 'pull -> prev' I
> will need to rename macro parameters in the same way.
> So it will be:
> +               mov     r3, lr, prev #\prev
> Is it correct?
>
> Thanks,
> Victor
>
>>
>> Nicolas

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH v2] ARM: asm: rename logical shift macros push pull into lspush lspull
  2014-02-11 19:52               ` Victor Kamensky
@ 2014-02-11 20:31                 ` Nicolas Pitre
  0 siblings, 0 replies; 11+ messages in thread
From: Nicolas Pitre @ 2014-02-11 20:31 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, 11 Feb 2014, Victor Kamensky wrote:

> On 11 February 2014 11:36, Victor Kamensky <victor.kamensky@linaro.org> wrote:
> > On 11 February 2014 09:58, Nicolas Pitre <nicolas.pitre@linaro.org> wrote:
> >> On Tue, 11 Feb 2014, Dave Martin wrote:
> >>
> >>> On Tue, Feb 11, 2014 at 12:09:35PM -0500, Nicolas Pitre wrote:
> >>> > On Tue, 11 Feb 2014, Dave Martin wrote:
> >>> >
> >>> > > On Mon, Feb 10, 2014 at 04:30:01PM -0500, Nicolas Pitre wrote:
> >>> > > > On Mon, 10 Feb 2014, Victor Kamensky wrote:
> >>> > > >
> >>> > > > > Renames logical shift macros, 'push' and 'pull', defined in
> >>> > > > > arch/arm/include/asm/assembler.h, into 'lspush' and 'lspull'.
> >>> > > >
> >>> > > > I don't have any fundamental objection to the idea, except maybe for the
> >>> > > > actual names.  I just can't come up with anything better though.
> >>> > >
> >>> > > For consistency with the get_byte_ stuff, how about:
> >>> > >
> >>> > >   push -> towards_byte_0
> >>> > >   pull -> from_byte_0
> >>> > >
> >>> > > That may make the purpose a little clearer, too.
> >>> >
> >>> > I don't know if
> >>> >
> >>> >     mov     r0, r1, from_byte_0 #8
> >>> >
> >>> > is that much clearer though.
> >>> >
> >>> > > (Assuming I've got them the right way around...)
> >>> >
> >>> > As you later noticed you got it wrong.  :-)
> >>> > Most likely because "full from" and "push towards" are common english
> >>> > constructs.
> >>>
> >>> No more so than "pull towards" and "push from".
> >>
> >> OK.  I'll trust you on that account.
> >>
> >>> I'll blame it on the fact that the get_byte_ macros have wrong-
> >>> endian numbering, which I didn't look at carefully enough ;)
> >>>
> >>> But I think we proved that my suggestion didn't really make things
> >>> easier to understand...
> >>
> >> What about:
> >>
> >>         push -> next
> >>         pull -> prev
> >>
> >> ?
> >>
> >> That would make:
> >>
> >>         mov     r0, r1, next #8
> >
> > I am not native English speaker, so subtle details of your
> > discussion go above my head :). For me those tokens
> > were just symbols with specific meaning of logical shifts
> > and selected endianness. I'll do as you decide. Quick
> > grep over .S files under arch/arm seems 'next' and 'prev'
> > will be OK and I did build that confirms that.
> 
> Forgot to mention one detail. There is a case in
> ./nwfpe/entry.S file where 'next' is used as label name. I guess,
> it should work if macro would rename it into lsl or lsr label
> name. And/or we could rename the label.
> 
> Wondering ... whether idea to have those macros
> name in way that coincides with English words would lead
> us to some conflict earlier or latter. With this respect lspull
> and lspush IMHO are somewhat better because they are
> sort of abbreviations.

Agreed.  I think it was worth exploring  different alternatives, but 
nothing really better came out.


Nicolas

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2014-02-11 20:31 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-10 20:19 [PATCH v2] ARM: asm: rename logical shift macros push pull into lspush lspull Victor Kamensky
2014-02-10 20:19 ` Victor Kamensky
2014-02-10 21:30   ` Nicolas Pitre
2014-02-11 15:54     ` Dave Martin
2014-02-11 15:59       ` Dave Martin
2014-02-11 17:09       ` Nicolas Pitre
2014-02-11 17:37         ` Dave Martin
2014-02-11 17:58           ` Nicolas Pitre
2014-02-11 19:36             ` Victor Kamensky
2014-02-11 19:52               ` Victor Kamensky
2014-02-11 20:31                 ` Nicolas Pitre

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox