diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2007-11-22 23:28:53 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2007-11-22 23:28:53 +0000 |
commit | ae7f4c94da6b922a136ca119fa823ba045fb66bd (patch) | |
tree | b1269e8d05389b1af1074adbcb70d1a8f15e4c11 | |
parent | f16c1c9e41168fd873fa028ccaf6f3044e61fa9c (diff) |
Do not redirect exception occuring when enabling the fpu to the error handler,
for we are supposed to be able to recover from them.
-rw-r--r-- | sys/arch/m88k/m88k/eh_common.S | 16 |
1 files changed, 1 insertions, 15 deletions
diff --git a/sys/arch/m88k/m88k/eh_common.S b/sys/arch/m88k/m88k/eh_common.S index 3b615d12fc1..c7fc9491939 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.35 2007/11/22 23:28:06 miod Exp $ */ +/* $OpenBSD: eh_common.S,v 1.36 2007/11/22 23:28:52 miod Exp $ */ /* * Mach Operating System * Copyright (c) 1993-1991 Carnegie Mellon University @@ -1876,19 +1876,6 @@ ASLOCAL(m88110_use_SR3_pcb) * know register 0 in the pcb frame will always be zero, so we can * use it as scratch storage. */ -#if 1 - ldcr TMP, PSR - clr TMP, TMP, 1<PSR_FPU_DISABLE_BIT> /* enable the FPU */ - clr TMP, TMP, 1<PSR_SHADOW_FREEZE_BIT> /* and shadowing */ - stcr TMP, EPSR - - or.u TMP, r0, hi16(_C_LABEL(m88110_error_handler)) - or TMP, TMP, lo16(_C_LABEL(m88110_error_handler)) - stcr TMP, EXIP - - RTE -#else - /* Testing!!! */ xcr r30, r30, SR3 /* r30 = old exception frame */ st r1, r30, GENREG_OFF(0) /* free up r1 */ ld r1, r30, REG_OFF(EF_EPSR) /* get back the epsr */ @@ -1925,7 +1912,6 @@ ASLOCAL(m88110_use_SR3_pcb) st r1, r31, GENREG_OFF(1) /* store r1 */ br.n _ASM_LABEL(m88110_have_pcb) xcr r30, r30, SR3 /* restore r30 */ -#endif ASLOCAL(m88110_pickup_stack) /* |