From 9a980a22ba5c15b3cf9af2770212fdccebe6fc48 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Wed, 18 Dec 2013 13:57:41 -0700 Subject: [PATCH] convert to_download_tracepoint 2014-02-19 Tom Tromey * target-delegates.c: Rebuild. * target.c (update_current_target): Don't inherit or default to_download_tracepoint. * target.h (struct target_ops) : Use TARGET_DEFAULT_NORETURN. --- gdb/ChangeLog | 8 ++++++++ gdb/target-delegates.c | 16 ++++++++++++++++ gdb/target.c | 5 +---- gdb/target.h | 3 ++- 4 files changed, 27 insertions(+), 5 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index a26d352796..51df9f9906 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,11 @@ +2014-02-19 Tom Tromey + + * target-delegates.c: Rebuild. + * target.c (update_current_target): Don't inherit or default + to_download_tracepoint. + * target.h (struct target_ops) : Use + TARGET_DEFAULT_NORETURN. + 2014-02-19 Tom Tromey * target-delegates.c: Rebuild. diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c index 6b0520992b..560a099b08 100644 --- a/gdb/target-delegates.c +++ b/gdb/target-delegates.c @@ -650,6 +650,19 @@ tdefault_trace_init (struct target_ops *self) tcomplain (); } +static void +delegate_download_tracepoint (struct target_ops *self, struct bp_location *arg1) +{ + self = self->beneath; + self->to_download_tracepoint (self, arg1); +} + +static void +tdefault_download_tracepoint (struct target_ops *self, struct bp_location *arg1) +{ + tcomplain (); +} + static int delegate_supports_btrace (struct target_ops *self) { @@ -780,6 +793,8 @@ install_delegators (struct target_ops *ops) ops->to_thread_architecture = delegate_thread_architecture; if (ops->to_trace_init == NULL) ops->to_trace_init = delegate_trace_init; + if (ops->to_download_tracepoint == NULL) + ops->to_download_tracepoint = delegate_download_tracepoint; if (ops->to_supports_btrace == NULL) ops->to_supports_btrace = delegate_supports_btrace; } @@ -844,5 +859,6 @@ install_dummy_methods (struct target_ops *ops) ops->to_supports_string_tracing = tdefault_supports_string_tracing; ops->to_thread_architecture = default_thread_architecture; ops->to_trace_init = tdefault_trace_init; + ops->to_download_tracepoint = tdefault_download_tracepoint; ops->to_supports_btrace = tdefault_supports_btrace; } diff --git a/gdb/target.c b/gdb/target.c index db4fed308d..1865e69f5b 100644 --- a/gdb/target.c +++ b/gdb/target.c @@ -689,7 +689,7 @@ update_current_target (void) /* Do not inherit to_supports_enable_disable_tracepoint. */ /* Do not inherit to_supports_string_tracing. */ /* Do not inherit to_trace_init. */ - INHERIT (to_download_tracepoint, t); + /* Do not inherit to_download_tracepoint. */ INHERIT (to_can_download_tracepoint, t); INHERIT (to_download_trace_state_variable, t); INHERIT (to_enable_tracepoint, t); @@ -752,9 +752,6 @@ update_current_target (void) (void (*) (struct target_ops *, ptid_t)) target_ignore); current_target.to_read_description = NULL; - de_fault (to_download_tracepoint, - (void (*) (struct target_ops *, struct bp_location *)) - tcomplain); de_fault (to_can_download_tracepoint, (int (*) (struct target_ops *)) return_zero); diff --git a/gdb/target.h b/gdb/target.h index 15ea4a8ad6..3cfdfab19d 100644 --- a/gdb/target.h +++ b/gdb/target.h @@ -806,7 +806,8 @@ struct target_ops /* Send full details of a tracepoint location to the target. */ void (*to_download_tracepoint) (struct target_ops *, - struct bp_location *location); + struct bp_location *location) + TARGET_DEFAULT_NORETURN (tcomplain ()); /* Is the target able to download tracepoint locations in current state? */