summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2004-09-15 05:56:34 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2004-09-15 05:56:34 +0000
commite9dd025c0ed725d067cb20c15d126b42c7b2176c (patch)
treee11fa0719faa463949034eecb00c199ba44e843d
parentffda8dd208799fa804c56e4d3e03068ed27c5cd4 (diff)
Win a cycle in FP exception SSBR processing.
-rw-r--r--sys/arch/m88k/m88k/eh_common.S7
1 files changed, 3 insertions, 4 deletions
diff --git a/sys/arch/m88k/m88k/eh_common.S b/sys/arch/m88k/m88k/eh_common.S
index f63559e483e..bc651030f3d 100644
--- a/sys/arch/m88k/m88k/eh_common.S
+++ b/sys/arch/m88k/m88k/eh_common.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: eh_common.S,v 1.5 2004/08/05 21:34:11 miod Exp $ */
+/* $OpenBSD: eh_common.S,v 1.6 2004/09/15 05:56:33 miod Exp $ */
/*
* Mach Operating System
* Copyright (c) 1993-1991 Carnegie Mellon University
@@ -1242,7 +1242,6 @@ ASLOCAL(clear_FPp_ssbr_bit)
fldcr TMP2, FPPT
st TMP2, r31, REG_OFF(EF_FPPT)
-1:
#define FPPT_SIZE_BIT 5
bb1.n FPPT_SIZE_BIT, TMP2, 2f
@@ -1252,8 +1251,8 @@ ASLOCAL(clear_FPp_ssbr_bit)
2:
set TMP3, TMP3, 1<6> /* size=2 - clear two bit for double */
3:
- clr TMP, TMP, TMP3 /* clear bit(s) in ssbr. */
- jmp r1
+ jmp.n r1
+ clr TMP, TMP, TMP3 /* clear bit(s) in ssbr. */
ASLOCAL(clear_dest_ssbr_bit)