public inbox for libc-ports@sourceware.org
 help / color / mirror / Atom feed
* [PATCH v2 roland/arm-avoid-r9] ARM: Use r10 instead of r9.
@ 2013-03-01 23:59 Roland McGrath
  0 siblings, 0 replies; only message in thread
From: Roland McGrath @ 2013-03-01 23:59 UTC (permalink / raw)
  To: libc-ports

Tested no 'make check' regressions on armv7l-linux-gnueabihf.  
(There were many failures, but no regressions and no failures in string/.)


Thanks,
Roland


ports/ChangeLog.arm
2013-03-01  Roland McGrath  <roland@hack.frob.com>

	* sysdeps/arm/memcpy.S: Use r10 instead of r9.
	* sysdeps/arm/memmove.S: Likewise.

--- a/ports/sysdeps/arm/memcpy.S
+++ b/ports/sysdeps/arm/memcpy.S
@@ -189,13 +189,13 @@ ENTRY(memcpy)
 	CALGN(	subcc	r2, r2, ip		)
 	CALGN(	bcc	15f			)
 
-11:		stmfd	sp!, {r5 - r9}
+11:		stmfd	sp!, {r5 - r8, r10}
 		cfi_adjust_cfa_offset (20)
 		cfi_rel_offset (r5, 0)
 		cfi_rel_offset (r6, 4)
 		cfi_rel_offset (r7, 8)
 		cfi_rel_offset (r8, 12)
-		cfi_rel_offset (r9, 16)
+		cfi_rel_offset (r10, 16)
 
 	PLD(	pld	[r1, #0]		)
 	PLD(	subs	r2, r2, #96		)
@@ -208,7 +208,7 @@ ENTRY(memcpy)
 13:		ldmia	r1!, {r4, r5, r6, r7}
 		mov	r3, lr, pull #\pull
 		subs	r2, r2, #32
-		ldmia	r1!, {r8, r9, ip, lr}
+		ldmia	r1!, {r8, r10, ip, lr}
 		orr	r3, r3, r4, push #\push
 		mov	r4, r4, pull #\pull
 		orr	r4, r4, r5, push #\push
@@ -219,23 +219,23 @@ ENTRY(memcpy)
 		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
+		orr	r8, r8, r10, push #\push
+		mov	r10, r10, pull #\pull
+		orr	r10, r10, ip, push #\push
 		mov	ip, ip, pull #\pull
 		orr	ip, ip, lr, push #\push
-		stmia	r0!, {r3, r4, r5, r6, r7, r8, r9, ip}
+		stmia	r0!, {r3, r4, r5, r6, r7, r8, r10, ip}
 		bge	12b
 	PLD(	cmn	r2, #96			)
 	PLD(	bge	13b			)
 
-		ldmfd	sp!, {r5 - r9}
+		ldmfd	sp!, {r5 - r8, r10}
 		cfi_adjust_cfa_offset (-20)
 		cfi_restore (r5)
 		cfi_restore (r6)
 		cfi_restore (r7)
 		cfi_restore (r8)
-		cfi_restore (r9)
+		cfi_restore (r10)
 
 14:		ands	ip, r2, #28
 		beq	16f
--- a/ports/sysdeps/arm/memmove.S
+++ b/ports/sysdeps/arm/memmove.S
@@ -204,13 +204,13 @@ ENTRY(memmove)
 	CALGN(	subcc	r2, r2, ip		)
 	CALGN(	bcc	15f			)
 
-11:		stmfd	sp!, {r5 - r9}
+11:		stmfd	sp!, {r5 - r8, r10}
 		cfi_adjust_cfa_offset (20)
 		cfi_rel_offset (r5, 0)
 		cfi_rel_offset (r6, 4)
 		cfi_rel_offset (r7, 8)
 		cfi_rel_offset (r8, 12)
-		cfi_rel_offset (r9, 16)
+		cfi_rel_offset (r10, 16)
 
 	PLD(	pld	[r1, #-4]		)
 	PLD(	subs	r2, r2, #96		)
@@ -220,15 +220,15 @@ ENTRY(memmove)
 	PLD(	pld	[r1, #-96]		)
 
 12:	PLD(	pld	[r1, #-128]		)
-13:		ldmdb   r1!, {r7, r8, r9, ip}
+13:		ldmdb   r1!, {r7, r8, r10, ip}
 		mov     lr, r3, push #\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
+		orr     ip, ip, r10, pull #\pull
+		mov     r10, r10, push #\push
+		orr     r10, r10, r8, pull #\pull
 		mov     r8, r8, push #\push
 		orr     r8, r8, r7, pull #\pull
 		mov     r7, r7, push #\push
@@ -239,18 +239,18 @@ ENTRY(memmove)
 		orr     r5, r5, r4, pull #\pull
 		mov     r4, r4, push #\push
 		orr     r4, r4, r3, pull #\pull
-		stmdb   r0!, {r4 - r9, ip, lr}
+		stmdb   r0!, {r4 - r8, r10, ip, lr}
 		bge	12b
 	PLD(	cmn	r2, #96			)
 	PLD(	bge	13b			)
 
-		ldmfd	sp!, {r5 - r9}
+		ldmfd	sp!, {r5 - r8, r10}
 		cfi_adjust_cfa_offset (-20)
 		cfi_restore (r5)
 		cfi_restore (r6)
 		cfi_restore (r7)
 		cfi_restore (r8)
-		cfi_restore (r9)
+		cfi_restore (r10)
 
 14:		ands	ip, r2, #28
 		beq	16f

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2013-03-01 23:59 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-03-01 23:59 [PATCH v2 roland/arm-avoid-r9] ARM: Use r10 instead of r9 Roland McGrath

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).