diff options
author | Michael Shalayeff <mickey@cvs.openbsd.org> | 2002-08-13 07:00:51 +0000 |
---|---|---|
committer | Michael Shalayeff <mickey@cvs.openbsd.org> | 2002-08-13 07:00:51 +0000 |
commit | 888a52da87a3c2a44c1b9dc13e2d08089a45a5fa (patch) | |
tree | c0cc22798c23ff09a31299a5e74cca9ccb766c7b | |
parent | 5d272cff19aed5707d29c97750f64ab29e23070c (diff) |
reset iir in the frame on _onfault handling, for mr.ddb
-rw-r--r-- | sys/arch/hppa/hppa/db_disasm.c | 4 | ||||
-rw-r--r-- | sys/arch/hppa/hppa/trap.c | 5 |
2 files changed, 6 insertions, 3 deletions
diff --git a/sys/arch/hppa/hppa/db_disasm.c b/sys/arch/hppa/hppa/db_disasm.c index 19daf6441df..a5fd5b05519 100644 --- a/sys/arch/hppa/hppa/db_disasm.c +++ b/sys/arch/hppa/hppa/db_disasm.c @@ -1,4 +1,4 @@ -/* $OpenBSD: db_disasm.c,v 1.13 2002/07/24 20:17:03 mickey Exp $ */ +/* $OpenBSD: db_disasm.c,v 1.14 2002/08/13 07:00:50 mickey Exp $ */ /* * Copyright (c) 1999 Michael Shalayeff @@ -2335,7 +2335,7 @@ db_disasm(loc, flag) OFS ofs = 0; iExInit(); - if (loc == ddb_regs.tf_iioq_head) + if (loc == ddb_regs.tf_iioq_head && ddb_regs.tf_iir) instruct = ddb_regs.tf_iir; else if (USERMODE(loc)) { if (copyin((caddr_t)(loc &~ HPPA_PC_PRIV_MASK), diff --git a/sys/arch/hppa/hppa/trap.c b/sys/arch/hppa/hppa/trap.c index e41999aeb61..e51c21c8817 100644 --- a/sys/arch/hppa/hppa/trap.c +++ b/sys/arch/hppa/hppa/trap.c @@ -1,4 +1,4 @@ -/* $OpenBSD: trap.c,v 1.45 2002/07/25 02:26:17 mickey Exp $ */ +/* $OpenBSD: trap.c,v 1.46 2002/08/13 07:00:50 mickey Exp $ */ /* * Copyright (c) 1998-2001 Michael Shalayeff @@ -358,6 +358,9 @@ trap(type, frame) frame->tf_iioq_tail = 4 + (frame->tf_iioq_head = pcbp->pcb_onfault); +#ifdef DDB + frame->tf_iir = 0; +#endif break; } #if 0 |