summaryrefslogtreecommitdiff
path: root/ddb/db_run.h
diff options
context:
space:
mode:
Diffstat (limited to 'ddb/db_run.h')
-rw-r--r--ddb/db_run.h48
1 files changed, 46 insertions, 2 deletions
diff --git a/ddb/db_run.h b/ddb/db_run.h
index 31c0e376..c042d4ca 100644
--- a/ddb/db_run.h
+++ b/ddb/db_run.h
@@ -24,6 +24,9 @@
* the rights to redistribute these changes.
*/
+#ifndef _DDB_DB_RUN_H_
+#define _DDB_DB_RUN_H_
+
#include <kern/task.h>
#include <machine/db_machdep.h>
@@ -43,8 +46,49 @@ extern void db_single_step(db_regs_t *regs, task_t task);
extern void db_single_step_cmd(
db_expr_t addr,
- int have_addr,
+ int have_addr,
+ db_expr_t count,
+ const char *modif);
+
+void db_trace_until_call_cmd(
+ db_expr_t addr,
+ int have_addr,
+ db_expr_t count,
+ const char * modif);
+
+void db_trace_until_matching_cmd(
+ db_expr_t addr,
+ int have_addr,
db_expr_t count,
- char *modif);
+ const char * modif);
+
+void db_continue_cmd(
+ db_expr_t addr,
+ int have_addr,
+ db_expr_t count,
+ const char * modif);
+
+#ifndef db_set_single_step
+void db_set_task_single_step(db_regs_t *, task_t);
+#else
+#define db_set_task_single_step(regs, task) db_set_single_step(regs)
+#endif
+#ifndef db_clear_single_step
+void db_clear_task_single_step(const db_regs_t *, task_t);
+#else
+#define db_clear_task_single_step(regs, task) db_clear_single_step(regs)
+#endif
extern boolean_t db_in_single_step(void);
+
+extern void
+db_restart_at_pc(
+ boolean_t watchpt,
+ task_t task);
+
+extern boolean_t
+db_stop_at_pc(
+ boolean_t *is_breakpoint,
+ task_t task);
+
+#endif /* _DDB_DB_RUN_H_ */