summaryrefslogtreecommitdiff
path: root/sys/arch/luna88k
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2007-12-20 21:14:08 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2007-12-20 21:14:08 +0000
commit590d1ec17a6c61753753e42a5b4275df72356eed (patch)
tree8e20db376b25dc1a728b67d8678ffa11566df51f /sys/arch/luna88k
parentb38ee845cc1d5065612de28ef164ba7c635893b7 (diff)
Do not wait for the end of the universe if delay(0).
Diffstat (limited to 'sys/arch/luna88k')
-rw-r--r--sys/arch/luna88k/luna88k/locore.S9
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/arch/luna88k/luna88k/locore.S b/sys/arch/luna88k/luna88k/locore.S
index d89b91cb50c..f09b18f2834 100644
--- a/sys/arch/luna88k/luna88k/locore.S
+++ b/sys/arch/luna88k/luna88k/locore.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: locore.S,v 1.18 2007/12/04 23:43:54 miod Exp $ */
+/* $OpenBSD: locore.S,v 1.19 2007/12/20 21:14:07 miod Exp $ */
/*
* Copyright (c) 1998 Steve Murphree, Jr.
* Copyright (c) 1996 Nivas Madhur
@@ -306,8 +306,9 @@ ASLOCAL(secondary_init)
*/
GLOBAL(delay)
- or.u r3, r0, hi16(_cpuspeed)
- ld r3, r3, lo16(_cpuspeed)
+ bcnd eq0, r2, 2f
+ or.u r3, r0, hi16(_C_LABEL(cpuseed))
+ ld r3, r3, lo16(_C_LABEL(cpuseed))
mul r4, r2, r3
subu r4, r4, 4 /* overhead of these instructions */
@@ -315,7 +316,7 @@ GLOBAL(delay)
1:
bcnd.n gt0, r4, 1b
subu r4, r4, 2 /* two cycles per iteration */
-
+2:
jmp r1
/*****************************************************************************/