Module Name:    src
Committed By:   matt
Date:           Sat Jan 29 02:21:20 UTC 2011

Modified Files:
        src/lib/libc/arch/powerpc/string: bzero.S

Log Message:
Don't use r0 to restore LR, use r7 instead.


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/lib/libc/arch/powerpc/string/bzero.S

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/lib/libc/arch/powerpc/string/bzero.S
diff -u src/lib/libc/arch/powerpc/string/bzero.S:1.10 src/lib/libc/arch/powerpc/string/bzero.S:1.11
--- src/lib/libc/arch/powerpc/string/bzero.S:1.10	Wed Jan 19 02:47:01 2011
+++ src/lib/libc/arch/powerpc/string/bzero.S	Sat Jan 29 02:21:20 2011
@@ -1,4 +1,4 @@
-/*	$NetBSD: bzero.S,v 1.10 2011/01/19 02:47:01 matt Exp $ */
+/*	$NetBSD: bzero.S,v 1.11 2011/01/29 02:21:20 matt Exp $ */
 
 /*-
  * Copyright (C) 2001	Martin J. Laubach <[email protected]>
@@ -32,7 +32,7 @@
 
 
 #if defined(LIBC_SCCS) && !defined(lint)
-__RCSID("$NetBSD: bzero.S,v 1.10 2011/01/19 02:47:01 matt Exp $")
+__RCSID("$NetBSD: bzero.S,v 1.11 2011/01/29 02:21:20 matt Exp $")
 #endif /* LIBC_SCCS && !lint */
 
 #ifdef _KERNEL
@@ -60,10 +60,10 @@
 END(bzero)
 
 ENTRY(memset)
-		cmplwi	cr1, %r5, 0
+		cmplwi	%cr1, %r5, 0
 		mr.	%r0, %r4
 		mr	%r8, %r3
-		beqlr-	cr1			/* Nothing to do */
+		beqlr-	%cr1			/* Nothing to do */
 
 		rlwimi	%r0, %r4, 8, 16, 23	/* word extend fill value */
 		rlwimi	%r0, %r0, 16, 0, 15
@@ -167,8 +167,8 @@
 		lwz	%r30, R30_SAVE(%r1)
 #endif
 		addi	%r1, %r1, STKFRAME_SZ
-		lwz	%r0, 4(%r1)
-		mtlr	%r0
+		lwz	%r7, 4(%r1)
+		mtlr	%r7
 
 		cntlzw	%r6, %r9			/* compute shift value */
 		li	%r5, 31
@@ -213,10 +213,10 @@
 #endif /* _KERNEL */
 		/* Back in memory filling business */
 		
-		cmplwi	cr1, r_len, 0		/* Nothing to do? */
+		cmplwi	%cr1, r_len, 0		/* Nothing to do? */
 		add	%r5, %r9, %r9
 		cmplw	r_len, %r5		/* <= 2*CL bytes to move? */
-		beqlr-	cr1			/* then do nothing */
+		beqlr-	%cr1			/* then do nothing */
 
 		blt+	simple_fill		/* a trivial fill routine */
 
@@ -277,9 +277,9 @@
 		bdnz	1b
 
 cblocks_done:	/* still CL aligned, but less than CL bytes left */
-		cmplwi	cr1, r_len, 0
+		cmplwi	%cr1, r_len, 0
 		cmplwi	r_len, 8
-		beq-	cr1, sf_return
+		beq-	%cr1, sf_return
 
 		blt-	sf_bytewise		/* <8 remaining? */
 		b	sf_aligned_w
@@ -292,12 +292,12 @@
 
 simple_fill:
 #if USE_STSWX
-		cmplwi	cr1, r_len, 12		/* < 12 bytes to move? */
+		cmplwi	%cr1, r_len, 12		/* < 12 bytes to move? */
 #else
-		cmplwi	cr1, r_len, 8		/* < 8 bytes to move? */
+		cmplwi	%cr1, r_len, 8		/* < 8 bytes to move? */
 #endif
 		andi.	%r5, r_dst, 0x03		/* bytes to fill to align4 */
-		blt	cr1, sf_bytewise	/* trivial byte mover */
+		blt	%cr1, sf_bytewise	/* trivial byte mover */
 
 		li	%r6, 4
 		subf	%r5, %r5, %r6

Reply via email to