summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorNiklas Hallqvist <niklas@cvs.openbsd.org>1997-07-23 23:32:44 +0000
committerNiklas Hallqvist <niklas@cvs.openbsd.org>1997-07-23 23:32:44 +0000
commit7d82bb9771786253fed0e0d05424c14d1cade241 (patch)
tree0f8020224f397d9323b1edcc34d39b50f5f93664 /sys
parenta9b3a5a27b12287e80b59fd2ad43778db2b39de3 (diff)
Correct the return instruction recognizer. Add the DB_VALID_BREAKPOINT macro
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/alpha/include/db_machdep.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/arch/alpha/include/db_machdep.h b/sys/arch/alpha/include/db_machdep.h
index 59f9d27aa97..b330fd30db4 100644
--- a/sys/arch/alpha/include/db_machdep.h
+++ b/sys/arch/alpha/include/db_machdep.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: db_machdep.h,v 1.6 1997/07/19 20:50:50 niklas Exp $ */
+/* $OpenBSD: db_machdep.h,v 1.7 1997/07/23 23:32:43 niklas Exp $ */
/*
* Copyright (c) 1997 Niklas Hallqvist. All rights reserverd.
@@ -65,10 +65,11 @@ db_regs_t ddb_regs;
#define FIXUP_PC_AFTER_BREAK(regs) ((regs)->tf_regs[FRAME_PC] -= sizeof(int))
#define SOFTWARE_SSTEP
+#define DB_VALID_BREAKPOINT(addr) db_valid_breakpoint(addr)
/* Hack to skip GCC "unused" warnings. */
#define inst_trap_return(ins) ((ins) & 0) /* XXX */
-#define inst_return(ins) ((ins) == 0x6bfa8001)
+#define inst_return(ins) (((ins) & 0xfc000000) == 0x68000000)
int inst_call __P((u_int));
int inst_branch __P((u_int));
@@ -78,5 +79,6 @@ db_addr_t branch_taken __P((u_int, db_addr_t,
register_t (*) __P((db_regs_t *, int)), db_regs_t *));
db_addr_t next_instr_address __P((db_addr_t, int));
int kdb_trap __P((int, int, db_regs_t *));
+int db_valid_breakpoint __P((db_addr_t));
#endif /* _ALPHA_DB_MACHDEP_H_ */