Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Oct 2002 10:52:45 -0700 (PDT)
From:      John Baldwin <jhb@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 20055 for review
Message-ID:  <200210241752.g9OHqjd1015808@repoman.freebsd.org>

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

Change 20055 by jhb@jhb_laptop on 2002/10/24 10:52:04

	Back out bogus changes to constraints (some of the changes
	were non-bogus and will be redone in a later submit.)

Affected files ...

.. //depot/projects/smpng/sys/alpha/include/alpha_cpu.h#3 edit

Differences ...

==== //depot/projects/smpng/sys/alpha/include/alpha_cpu.h#3 (text+ko) ====

@@ -353,10 +353,11 @@
 static __inline void
 alpha_pal_cflush(u_int64_t pfn)
 {
+	register u_int64_t a0 __asm__("$16") = pfn;
 	__asm__ __volatile__ (
 		"call_pal 0x1 #PAL_cflush"
 		:
-		: "$16" (pfn));
+		: "r" (a0));
 }
 
 static __inline void
@@ -368,21 +369,21 @@
 static __inline void
 alpha_pal_wripir(u_int64_t ipir)
 {
+	register u_int64_t a0 __asm__("$16") = ipir;
 	__asm__ __volatile__ (
 		"call_pal 0xd #PAL_ipir"
-		: "+$16" (ipir)
-		:
+		: "=r" (a0)
+		: "0" (a0)
 		: "$1", "$22", "$23", "$24", "$25");
 }
 
 static __inline u_int64_t
 alpha_pal_rdmces(void)
 {
-	u_int64_t v0;
-
+	register u_int64_t v0 __asm__("$0");
 	__asm__ __volatile__ (
 		"call_pal 0x10 #PAL_OSF1_rdmces"
-		: "=$0" (v0)
+		: "=r" (v0)
 		:
 		: "$1", "$22", "$23", "$24", "$25");
 	return v0;
@@ -391,42 +392,45 @@
 static __inline void
 alpha_pal_wrmces(u_int64_t mces)
 {
+	register u_int64_t a0 __asm__("$16") = mces;
 	__asm__ __volatile__ (
 		"call_pal 0x11 #PAL_wrmces"
-		: "+$16" (mces)
-		:
+		: "=r" (a0)
+		: "0" (a0)
 		: "$1", "$22", "$23", "$24", "$25");
 }
 
 static __inline void
 alpha_pal_wrfen(u_int64_t fen)
 {
+	register u_int64_t a0 __asm__("$16") = fen;
 	__asm__ __volatile__ (
 		"call_pal 0x2b #PAL_wrfen"
-		: "+$16" (fen)
-		:
+		: "=r" (a0)
+		: "0" (a0)
 		: "$1", "$22", "$23", "$24", "$25");
 }
 
 static __inline void
 alpha_pal_wrvptptr(u_int64_t vptptr)
 {
+	register u_int64_t a0 __asm__("$16") = vptptr;
 	__asm__ __volatile__ (
 		"call_pal 0x2d #PAL_wrvptptr"
-		: "+$16" (vptptr)
-		:
+		: "=r" (a0)
+		: "0" (a0)
 		: "$1", "$22", "$23", "$24", "$25");
 }
 
 static __inline u_int64_t
 alpha_pal_swpctx(u_int64_t pcb)
 {
-	u_int64_t v0;
-
+	register u_int64_t a0 __asm__("$16") = pcb;
+	register u_int64_t v0 __asm__("$0");
 	__asm__ __volatile__ (
 		"call_pal 0x30 #PAL_OSF1_swpctx"
-		: "=$0" (v0), "+$16" (pcb)
-		:
+		: "=r" (v0), "=r" (a0)
+		: "1" (a0)
 		: "$1", "$22", "$23", "$24", "$25", "memory");
 	return v0;
 }
@@ -434,21 +438,21 @@
 static __inline void
 alpha_pal_wrval(u_int64_t sysvalue)
 {
+	register u_int64_t a0 __asm__("$16") = sysvalue;
 	__asm__ __volatile__ (
 		"call_pal 0x31 #PAL_wrval"
-		: "+$16" (sysvalue)
-		:
+		: "=r" (a0)
+		: "0" (a0)
 		: "$1", "$22", "$23", "$24", "$25");
 }
 
 static __inline u_int64_t
 alpha_pal_rdval(void)
 {
-	u_int64_t v0;
-
+	register u_int64_t v0 __asm__("$0");
 	__asm__ __volatile__ (
 		"call_pal 0x32 #PAL_OSF1_rdval"
-		: "=$0" (v0)
+		: "=r" (v0)
 		:
 		: "$1", "$22", "$23", "$24", "$25");
 	return v0;
@@ -457,32 +461,36 @@
 static __inline void
 alpha_pal_tbi(u_int64_t op, u_int64_t va)
 {
+	register u_int64_t a0 __asm__("$16") = op;
+	register u_int64_t a1 __asm__("$17") = va;
 	__asm__ __volatile__ (
 		"call_pal 0x33 #PAL_OSF1_tbi"
-		: "+$16" (op), "+$17" (va)
-		:
+		: "=r" (a0), "=r" (a1)
+		: "0" (a0), "1" (a1)
 		: "$1", "$22", "$23", "$24", "$25");
 }
 
 static __inline void
 alpha_pal_wrent(void *ent, u_int64_t which)
 {
+	register u_int64_t a0 __asm__("$16") = (u_int64_t) ent;
+	register u_int64_t a1 __asm__("$17") = which;
 	__asm__ __volatile__ (
 		"call_pal 0x34 #PAL_OSF1_wrent"
-		: "+$16" ((u_int64_t) ent), "+$17" (which)
-		:
+		: "=r" (a0), "=r" (a1)
+		: "0" (a0), "1" (a1)
 		: "$1", "$22", "$23", "$24", "$25");
 }
 
 static __inline u_int64_t
 alpha_pal_swpipl(u_int64_t newipl)
 {
-	u_int64_t v0;
-
+	register u_int64_t a0 __asm__("$16") = newipl;
+	register u_int64_t v0 __asm__("$0");
 	__asm__ __volatile__ (
 		"call_pal 0x35 #PAL_OSF1_swpipl"
-		: "=$0" (v0), "+$16" (newipl)
-		:
+		: "=r" (v0), "=r" (a0)
+		: "1" (a0)
 		: "$1", "$22", "$23", "$24", "$25");
 	return v0;
 }
@@ -490,11 +498,10 @@
 static __inline u_int64_t
 alpha_pal_rdps(void)
 {
-	u_int64_t v0;
-
+	register u_int64_t v0 __asm__("$0");
 	__asm__ __volatile__ (
 		"call_pal 0x36 #PAL_OSF1_rdps"
-		: "=$0" (v0)
+		: "=r" (v0)
 		:
 		: "$1", "$22", "$23", "$24", "$25");
 	return v0;
@@ -503,22 +510,24 @@
 static __inline void
 alpha_pal_wrusp(u_int64_t usp)
 {
+	register u_int64_t a0 __asm__("$16") = usp;
 	__asm__ __volatile__ (
 		"call_pal 0x38 #PAL_wrusp"
-		: "+$16" (usp)
-		:
+		: "=r" (a0)
+		: "0" (a0)
 		: "$1", "$22", "$23", "$24", "$25");
 }
 
 static __inline u_int64_t
 alpha_pal_wrperfmon(u_int64_t arg0, u_int64_t arg1)
 {
-	u_int64_t v0;
-
+	register u_int64_t v0 __asm__("$0");
+	register u_int64_t a0 __asm__("$16") = arg0;
+	register u_int64_t a1 __asm__("$17") = arg1;
 	__asm__ __volatile__ (
 		"call_pal 0x39 #PAL_OSF1_wrperfmon"
-		: "+$16" (arg0), "+$17" (arg1), "=$0" (v0)
-		:
+		: "=r" (a0), "=r" (a1), "=r" (v0)
+		: "0" (a0), "1" (a1)
 		: "$1", "$22", "$23", "$24", "$25");
 	return v0;
 }
@@ -526,11 +535,10 @@
 static __inline u_int64_t
 alpha_pal_rdusp(void)
 {
-	u_int64_t v0;
-
+	register u_int64_t v0 __asm__("$0");
 	__asm__ __volatile__ (
 		"call_pal 0x3a #PAL_OSF1_rdusp"
-		: "=$0" (v0)
+		: "=r" (v0)
 		:
 		: "$1", "$22", "$23", "$24", "$25");
 	return v0;
@@ -539,11 +547,10 @@
 static __inline u_int64_t
 alpha_pal_whami(void)
 {
-	u_int64_t v0;
-
+	register u_int64_t v0 __asm__("$0");
 	__asm__ __volatile__ (
 		"call_pal 0x3c #PAL_OSF1_whami"
-		: "=$0" (v0)
+		: "=r" (v0)
 		:
 		: "$1", "$22", "$23", "$24", "$25");
 	return v0;

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe p4-projects" in the body of the message




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