diff options
author | Michael Shalayeff <mickey@cvs.openbsd.org> | 2000-01-11 05:39:53 +0000 |
---|---|---|
committer | Michael Shalayeff <mickey@cvs.openbsd.org> | 2000-01-11 05:39:53 +0000 |
commit | bb328288340f76b942482d78a866e9eb5283bf48 (patch) | |
tree | 559697407a81062da135e68dca4711ee4bdf0469 /sys/arch/hppa | |
parent | 1d8c356184578fad0ee0fadcee0872e3bb5bc7c6 (diff) |
rearrange diagnostic trap cases
Diffstat (limited to 'sys/arch/hppa')
-rw-r--r-- | sys/arch/hppa/hppa/trap.c | 32 |
1 files changed, 14 insertions, 18 deletions
diff --git a/sys/arch/hppa/hppa/trap.c b/sys/arch/hppa/hppa/trap.c index 440f12d1e73..12e51f84f67 100644 --- a/sys/arch/hppa/hppa/trap.c +++ b/sys/arch/hppa/hppa/trap.c @@ -1,4 +1,4 @@ -/* $OpenBSD: trap.c,v 1.14 1999/12/31 18:27:40 mickey Exp $ */ +/* $OpenBSD: trap.c,v 1.15 2000/01/11 05:39:52 mickey Exp $ */ /* * Copyright (c) 1998,1999 Michael Shalayeff @@ -208,6 +208,19 @@ trap(type, frame) printf ("trap: handicapped"); break; #endif + +#ifdef DIAGNOSTIC + case T_EXCEPTION: + panic("FPU/SFU emulation botch"); + + /* these just can't happen ever */ + case T_PRIV_OP: + case T_PRIV_REG: + /* these just can't make it to the trap() ever */ + case T_HPMC: case T_HPMC | T_USER: + case T_EMULATION: case T_EMULATION | T_USER: + case T_TLB_DIRTY: case T_TLB_DIRTY | T_USER: +#endif case T_IBREAK: case T_DATALIGN: case T_DBREAK: @@ -228,28 +241,11 @@ trap(type, frame) #endif break; -#ifdef DIAGNOSTIC - /* these just can't happen ever */ - case T_PRIV_OP: - case T_PRIV_REG: - panic ("loss of mind"); - break; - - /* these just can't make it to the trap() ever */ - case T_HPMC: case T_HPMC | T_USER: - case T_EXCEPTION: - case T_EMULATION: - case T_TLB_DIRTY: case T_TLB_DIRTY | T_USER: - panic ("trap: impossible \'%s\' (%d)", tts, type); - break; -#endif - case T_IBREAK | T_USER: case T_DBREAK | T_USER: /* pass to user debugger */ break; - case T_EMULATION | T_USER: case T_EXCEPTION | T_USER: /* co-proc assist trap */ sv.sival_int = va; trapsignal(p, SIGFPE, type &~ T_USER, FPE_FLTINV, sv); |