summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--c/src/lib/libcpu/i960/ChangeLog5
-rw-r--r--c/src/lib/libcpu/i960/include/i960CA.h4
-rw-r--r--c/src/lib/libcpu/i960/include/i960RP.h4
3 files changed, 9 insertions, 4 deletions
diff --git a/c/src/lib/libcpu/i960/ChangeLog b/c/src/lib/libcpu/i960/ChangeLog
index f9c4978821..d0f25342d5 100644
--- a/c/src/lib/libcpu/i960/ChangeLog
+++ b/c/src/lib/libcpu/i960/ChangeLog
@@ -1,3 +1,8 @@
+2001-05-09 Joel Sherrill <joel@OARcorp.com>
+
+ * include/i960CA.h, include/i960RP.h: Correct inline assembly
+ forward reference labels.
+
2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac:
diff --git a/c/src/lib/libcpu/i960/include/i960CA.h b/c/src/lib/libcpu/i960/include/i960CA.h
index b3f8971056..509a833937 100644
--- a/c/src/lib/libcpu/i960/include/i960CA.h
+++ b/c/src/lib/libcpu/i960/include/i960CA.h
@@ -83,8 +83,8 @@ typedef i960ca_PRCB i960_PRCB;
#define i960_clear_intr( xint ) \
{ register unsigned int _xint=(xint); \
-asm volatile( "loop_til_cleared: clrbit %0,sf0,sf0 ; \
- bbs %0,sf0, loop_til_cleared" \
+asm volatile( "99: clrbit %0,sf0,sf0 ; \
+ bbs %0,sf0, 99b" \
: "=d" (_xint) : "0" (_xint) ); \
}
diff --git a/c/src/lib/libcpu/i960/include/i960RP.h b/c/src/lib/libcpu/i960/include/i960RP.h
index f186db5095..558e2b9556 100644
--- a/c/src/lib/libcpu/i960/include/i960RP.h
+++ b/c/src/lib/libcpu/i960/include/i960RP.h
@@ -366,9 +366,9 @@ typedef i960rp_PRCB i960_PRCB;
register unsigned int _mask=(1<<(xint)); \
register unsigned int *_ipnd = (int * ) IPND_ADDR; \
register unsigned int _rslt = 0; \
-asm volatile( "loop_til_cleared: mov 0, %0; \
+asm volatile( "99: mov 0, %0; \
atmod %1, %2, %0; \
- bbs %3,%0, loop_til_cleared" \
+ bbs %3,%0, 99b" \
: "=d" (_rslt), "=d" (_ipnd), "=d" (_mask), "=d" (_xint) \
: "0" (_rslt), "1" (_ipnd), "2" (_mask), "3" (_xint) ); \
}