diff options
author | Tom Tromey <tromey@redhat.com> | 2013-12-18 10:45:38 -0700 |
---|---|---|
committer | Tom Tromey <tromey@redhat.com> | 2014-02-19 07:47:24 -0700 |
commit | 62f64d7a6a8e8e46afa52133dc8a098684e118e9 (patch) | |
tree | 34bad8a8048078d9a280d70b991a33dbc58db223 | |
parent | 95c3375e4733e676f9fb6f2229061151d139fcb6 (diff) | |
download | binutils-62f64d7a6a8e8e46afa52133dc8a098684e118e9.zip binutils-62f64d7a6a8e8e46afa52133dc8a098684e118e9.tar.gz binutils-62f64d7a6a8e8e46afa52133dc8a098684e118e9.tar.bz2 |
convert to_insert_exec_catchpoint
2014-02-19 Tom Tromey <tromey@redhat.com>
* target-delegates.c: Rebuild.
* target.c (update_current_target): Don't inherit or default
to_insert_exec_catchpoint.
* target.h (struct target_ops) <to_insert_exec_catchpoint>: Use
TARGET_DEFAULT_RETURN.
-rw-r--r-- | gdb/ChangeLog | 8 | ||||
-rw-r--r-- | gdb/target-delegates.c | 16 | ||||
-rw-r--r-- | gdb/target.c | 5 | ||||
-rw-r--r-- | gdb/target.h | 3 |
4 files changed, 27 insertions, 5 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 79fcf8f..0107969 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -2,6 +2,14 @@ * target-delegates.c: Rebuild. * target.c (update_current_target): Don't inherit or default + to_insert_exec_catchpoint. + * target.h (struct target_ops) <to_insert_exec_catchpoint>: Use + TARGET_DEFAULT_RETURN. + +2014-02-19 Tom Tromey <tromey@redhat.com> + + * target-delegates.c: Rebuild. + * target.c (update_current_target): Don't inherit or default to_remove_vfork_catchpoint. * target.h (struct target_ops) <to_remove_vfork_catchpoint>: Use TARGET_DEFAULT_RETURN. diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c index c3a090b..20f5c5c 100644 --- a/gdb/target-delegates.c +++ b/gdb/target-delegates.c @@ -374,6 +374,19 @@ tdefault_remove_vfork_catchpoint (struct target_ops *self, int arg1) return 1; } +static int +delegate_insert_exec_catchpoint (struct target_ops *self, int arg1) +{ + self = self->beneath; + return self->to_insert_exec_catchpoint (self, arg1); +} + +static int +tdefault_insert_exec_catchpoint (struct target_ops *self, int arg1) +{ + return 1; +} + static void delegate_rcmd (struct target_ops *self, char *arg1, struct ui_file *arg2) { @@ -501,6 +514,8 @@ install_delegators (struct target_ops *ops) ops->to_insert_vfork_catchpoint = delegate_insert_vfork_catchpoint; if (ops->to_remove_vfork_catchpoint == NULL) ops->to_remove_vfork_catchpoint = delegate_remove_vfork_catchpoint; + if (ops->to_insert_exec_catchpoint == NULL) + ops->to_insert_exec_catchpoint = delegate_insert_exec_catchpoint; if (ops->to_rcmd == NULL) ops->to_rcmd = delegate_rcmd; if (ops->to_can_async_p == NULL) @@ -550,6 +565,7 @@ install_dummy_methods (struct target_ops *ops) ops->to_remove_fork_catchpoint = tdefault_remove_fork_catchpoint; ops->to_insert_vfork_catchpoint = tdefault_insert_vfork_catchpoint; ops->to_remove_vfork_catchpoint = tdefault_remove_vfork_catchpoint; + ops->to_insert_exec_catchpoint = tdefault_insert_exec_catchpoint; ops->to_rcmd = default_rcmd; ops->to_can_async_p = find_default_can_async_p; ops->to_is_async_p = find_default_is_async_p; diff --git a/gdb/target.c b/gdb/target.c index 2a5f2ae..783ed75 100644 --- a/gdb/target.c +++ b/gdb/target.c @@ -635,7 +635,7 @@ update_current_target (void) /* Do not inherit to_insert_vfork_catchpoint. */ /* Do not inherit to_remove_vfork_catchpoint. */ /* Do not inherit to_follow_fork. */ - INHERIT (to_insert_exec_catchpoint, t); + /* Do not inherit to_insert_exec_catchpoint. */ INHERIT (to_remove_exec_catchpoint, t); INHERIT (to_set_syscall_catchpoint, t); INHERIT (to_has_exited, t); @@ -734,9 +734,6 @@ update_current_target (void) (int (*) (CORE_ADDR, gdb_byte *, int, int, struct mem_attrib *, struct target_ops *)) nomemory); - de_fault (to_insert_exec_catchpoint, - (int (*) (struct target_ops *, int)) - return_one); de_fault (to_remove_exec_catchpoint, (int (*) (struct target_ops *, int)) return_one); diff --git a/gdb/target.h b/gdb/target.h index 8f10b82..cfec2a1 100644 --- a/gdb/target.h +++ b/gdb/target.h @@ -528,7 +528,8 @@ struct target_ops int (*to_remove_vfork_catchpoint) (struct target_ops *, int) TARGET_DEFAULT_RETURN (1); int (*to_follow_fork) (struct target_ops *, int, int); - int (*to_insert_exec_catchpoint) (struct target_ops *, int); + int (*to_insert_exec_catchpoint) (struct target_ops *, int) + TARGET_DEFAULT_RETURN (1); int (*to_remove_exec_catchpoint) (struct target_ops *, int); int (*to_set_syscall_catchpoint) (struct target_ops *, int, int, int, int, int *); |