diff options
author | Artur Grabowski <art@cvs.openbsd.org> | 1999-06-17 18:17:11 +0000 |
---|---|---|
committer | Artur Grabowski <art@cvs.openbsd.org> | 1999-06-17 18:17:11 +0000 |
commit | 69deb077e03a795ce0c7dc0491603887d17c6574 (patch) | |
tree | b5c848bc30c707ecd66968f72f4a7ead7f070ca1 | |
parent | 7ddb98bd40352576ff3082eb7155b17f6593f09c (diff) |
fix continuing from breakpoints on sparc
-rw-r--r-- | sys/arch/sparc/sparc/trap.c | 3 | ||||
-rw-r--r-- | sys/ddb/db_run.c | 6 |
2 files changed, 6 insertions, 3 deletions
diff --git a/sys/arch/sparc/sparc/trap.c b/sys/arch/sparc/sparc/trap.c index 23ce365fcf9..0316445cd11 100644 --- a/sys/arch/sparc/sparc/trap.c +++ b/sys/arch/sparc/sparc/trap.c @@ -1,4 +1,4 @@ -/* $OpenBSD: trap.c,v 1.16 1999/04/22 19:02:49 art Exp $ */ +/* $OpenBSD: trap.c,v 1.17 1999/06/17 18:17:10 art Exp $ */ /* $NetBSD: trap.c,v 1.58 1997/09/12 08:55:01 pk Exp $ */ /* @@ -304,7 +304,6 @@ trap(type, psr, pc, tf) if (type == T_BREAKPOINT) { write_all_windows(); if (kdb_trap(type, tf)) { - ADVANCE; return; } } diff --git a/sys/ddb/db_run.c b/sys/ddb/db_run.c index 872daa9c505..7bb68be0519 100644 --- a/sys/ddb/db_run.c +++ b/sys/ddb/db_run.c @@ -1,4 +1,4 @@ -/* $OpenBSD: db_run.c,v 1.11 1998/03/16 08:44:32 pefo Exp $ */ +/* $OpenBSD: db_run.c,v 1.12 1999/06/17 18:17:08 art Exp $ */ /* $NetBSD: db_run.c,v 1.8 1996/02/05 01:57:12 christos Exp $ */ /* @@ -107,6 +107,9 @@ db_stop_at_pc(regs, is_breakpoint) (db_not_taken_bkpt && db_not_taken_bkpt->address == pc)) #endif ) { +#ifdef PC_ADVANCE + PC_ADVANCE(regs); +#else /* * XXX why on earth is this ifndef'd? Please explain! * I believe this was a workaround a bug where singlestep @@ -116,6 +119,7 @@ db_stop_at_pc(regs, is_breakpoint) #ifndef m88k PC_REGS(regs) = old_pc; #endif +#endif } db_clear_single_step(regs); |