Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 11 Dec 2005 18:58:45 GMT
From:      Olivier Houchard <cognet@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 88038 for review
Message-ID:  <200512111858.jBBIwjJK044031@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=88038

Change 88038 by cognet@cognet on 2005/12/11 18:58:30

	pc apparently can't be used as the first operand for cmp, so move its
	value to r0 first.

Affected files ...

.. //depot/projects/arm/src/sys/arm/arm/locore.S#12 edit

Differences ...

==== //depot/projects/arm/src/sys/arm/arm/locore.S#12 (text+ko) ====

@@ -201,21 +201,19 @@
 	subs	r2, r2, #4
 	bgt	.L1
 
+	ldr	r4, =KERNVIRTADDR
+	mov	r0, pc
+	cmp	r0, r4
 #if	KERNVIRTADDR > KERNPHYSADDR
-	ldr	r4, =KERNVIRTADDR
-	cmp	r4, pc
-	bgt	virt_done		/* if pc is > KERNVIRTADDR, no adj */
+	bgt	virt_done
 	ldr	r5, =KERNPHYSADDR
 	sub	r4, r4, r5
 	add	pc, pc, r4
 #else
-	ldr	r4, =KERNPHYSADDR
-	cmp	r4, pc
-	blt	virt_done		/* if pc is < KERNPHYSADDR, no adj */
-	ldr	r4, =KERNPHYSADDR
-	ldr	r5, =KERNVIRTADDR
-	sub	r4, r4, r5
-	sub	pc, pc, r4
+	blt	virt_done
+	ldr	r5, =KERNPHYSADDR
+	sub	r5, r5, r4
+	sub	pc, pc, r5
 #endif
 virt_done:
 	nop



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200512111858.jBBIwjJK044031>