Module Name:    src
Committed By:   joerg
Date:           Thu Dec 19 23:48:44 UTC 2013

Modified Files:
        src/sys/arch/arm/arm: cpu_in_cksum.S

Log Message:
Use explicit register pairs as arguments for ldrd.


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/arm/arm/cpu_in_cksum.S

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

Modified files:

Index: src/sys/arch/arm/arm/cpu_in_cksum.S
diff -u src/sys/arch/arm/arm/cpu_in_cksum.S:1.6 src/sys/arch/arm/arm/cpu_in_cksum.S:1.7
--- src/sys/arch/arm/arm/cpu_in_cksum.S:1.6	Sun Aug 18 15:58:19 2013
+++ src/sys/arch/arm/arm/cpu_in_cksum.S	Thu Dec 19 23:48:44 2013
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu_in_cksum.S,v 1.6 2013/08/18 15:58:19 matt Exp $	*/
+/*	$NetBSD: cpu_in_cksum.S,v 1.7 2013/12/19 23:48:44 joerg Exp $	*/
 
 /*
  * Copyright 2003 Wasabi Systems, Inc.
@@ -40,7 +40,7 @@
  */
 
 #include <machine/asm.h>
-RCSID("$NetBSD: cpu_in_cksum.S,v 1.6 2013/08/18 15:58:19 matt Exp $")
+RCSID("$NetBSD: cpu_in_cksum.S,v 1.7 2013/12/19 23:48:44 joerg Exp $")
 	
 #include "assym.h"
 
@@ -227,37 +227,37 @@ ASENTRY_NP(.L_cksumdata)
 	 * setting r6 to zero to avoid stalling for results in the
 	 * loop. (r7 is live, from above).
 	 */
-	ldrd	r4, [r0], #0x08
+	ldrd	r4, r5, [r0], #0x08
 	mov	r6, #0x00
 .Lcksumdata_bigloop:
 	pld	[r0, #0x18]
 	adds	r2, r2, r6
 	adcs	r2, r2, r7
-	ldrd	r6, [r0], #0x08
+	ldrd	r6, r7, [r0], #0x08
 	adcs	r2, r2, r4
 	adcs	r2, r2, r5
-	ldrd	r4, [r0], #0x08
+	ldrd	r4, r5, [r0], #0x08
 	adcs	r2, r2, r6
 	adcs	r2, r2, r7
-	ldrd	r6, [r0], #0x08
+	ldrd	r6, r7, [r0], #0x08
 	adcs	r2, r2, r4
 	adcs	r2, r2, r5
-	ldrd	r4, [r0], #0x08
+	ldrd	r4, r5, [r0], #0x08
 	adcs	r2, r2, r6
 	adcs	r2, r2, r7
 	pld	[r0, #0x18]
-	ldrd	r6, [r0], #0x08
+	ldrd	r6, r7, [r0], #0x08
 	adcs	r2, r2, r4
 	adcs	r2, r2, r5
-	ldrd	r4, [r0], #0x08
+	ldrd	r4, r5, [r0], #0x08
 	adcs	r2, r2, r6
 	adcs	r2, r2, r7
-	ldrd	r6, [r0], #0x08
+	ldrd	r6, r7, [r0], #0x08
 	adcs	r2, r2, r4
 	adcs	r2, r2, r5
 	adcs	r2, r2, #0x00
 	subs	r1, r1, #0x40
-	ldrdge	r4, [r0], #0x08
+	ldrdge	r4, r5, [r0], #0x08
 	bge	.Lcksumdata_bigloop
 
 	adds	r2, r2, r6		/* r6/r7 still need summing */
@@ -306,16 +306,16 @@ ASENTRY_NP(.L_cksumdata)
 	cmp	r1, #0x20
 
 #ifdef __XSCALE__
-	ldrdge	r4, [r0], #0x08		/* Avoid stalling pld and result */
+	ldrdge	r4, r5, [r0], #0x08	/* Avoid stalling pld and result */
 	blt	.Lcksumdata_less_than_32
 	pld	[r0, #0x18]
-	ldrd	r6, [r0], #0x08
+	ldrd	r6, r7, [r0], #0x08
 	adds	r2, r2, r4
 	adcs	r2, r2, r5
-	ldrd	r4, [r0], #0x08
+	ldrd	r4, r5, [r0], #0x08
 	adcs	r2, r2, r6
 	adcs	r2, r2, r7
-	ldrd	r6, [r0], #0x08
+	ldrd	r6, r7, [r0], #0x08
 	adcs	r2, r2, r4
 	adcs	r2, r2, r5
 	adcs	r2, r2, r6		/* XXX: Unavoidable result stall */

Reply via email to