aboutsummaryrefslogtreecommitdiff
path: root/gdb/target.c
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2016-08-10 23:03:29 +0100
committerPedro Alves <palves@redhat.com>2016-08-10 23:03:29 +0100
commit73971819031d74eb846805a9fbfad04ba1dff500 (patch)
tree84afc3ce706b1c3654b49fa4c7966ce40c3585f3 /gdb/target.c
parentb2b6a7dab91de9a616e1d76c869d127c5752b9e6 (diff)
downloadgdb-73971819031d74eb846805a9fbfad04ba1dff500.zip
gdb-73971819031d74eb846805a9fbfad04ba1dff500.tar.gz
gdb-73971819031d74eb846805a9fbfad04ba1dff500.tar.bz2
Plumb enum remove_bp_reason all the way to target_remove_breakpoint
So the target knows whether we're detaching breakpoints. Nothing uses the parameter in this patch yet. gdb/ChangeLog: 2016-08-10 Pedro Alves <palves@redhat.com> PR gdb/19187 * break-catch-sig.c (signal_catchpoint_remove_location): Adjust interface. * break-catch-syscall.c (remove_catch_syscall): * breakpoint.c (enum remove_bp_reason): Moved to breakpoint.h. (remove_breakpoint_1): Pass 'reason' down. (remove_catch_fork, remove_catch_vfork, remove_catch_solib) (remove_catch_exec, remove_watchpoint, remove_masked_watchpoint) (base_breakpoint_remove_location, bkpt_remove_location) (bkpt_probe_remove_location, bkpt_probe_remove_location): Adjust interface. * breakpoint.h (enum remove_bp_reason): Moved here from breakpoint.c. (struct breakpoint_ops) <remove_location>: Add 'reason' parameter. * corelow.c (core_remove_breakpoint): New function. (init_core_ops): Install it as to_remove_breakpoint method. * exec.c (exec_remove_breakpoint): New function. (init_exec_ops): Install it as to_remove_breakpoint method. * mem-break.c (memory_remove_breakpoint): Adjust interface. * record-btrace.c (record_btrace_remove_breakpoint): Adjust interface. * record-full.c (record_full_remove_breakpoint) (record_full_core_remove_breakpoint): Adjust interface. * remote.c (remote_remove_breakpoint): Adjust interface. * target-debug.h (target_debug_print_enum_remove_bp_reason): New macro. * target-delegates.c: Regenerate. * target.c (target_remove_breakpoint): Add 'reason' parameter. * target.h (struct target_ops) <to_remove_breakpoint>: Add 'reason' parameter. (target_remove_breakpoint, memory_remove_breakpoint): Add 'reason' parameter.
Diffstat (limited to 'gdb/target.c')
-rw-r--r--gdb/target.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gdb/target.c b/gdb/target.c
index 5603d01..13e3cdb 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -2113,7 +2113,8 @@ target_insert_breakpoint (struct gdbarch *gdbarch,
int
target_remove_breakpoint (struct gdbarch *gdbarch,
- struct bp_target_info *bp_tgt)
+ struct bp_target_info *bp_tgt,
+ enum remove_bp_reason reason)
{
/* This is kind of a weird case to handle, but the permission might
have been changed after breakpoints were inserted - in which case
@@ -2126,7 +2127,7 @@ target_remove_breakpoint (struct gdbarch *gdbarch,
}
return current_target.to_remove_breakpoint (&current_target,
- gdbarch, bp_tgt);
+ gdbarch, bp_tgt, reason);
}
static void