From: Tom Tromey Date: Wed, 18 Dec 2013 21:15:55 +0000 (-0700) Subject: convert to_get_tib_address X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=22bcceeec6bfd4373fa8d09acff66115800f0455;p=binutils-gdb.git convert to_get_tib_address 2014-02-19 Tom Tromey * target-delegates.c: Rebuild. * target.c (update_current_target): Don't inherit or default to_get_tib_address. * target.h (struct target_ops) : Use TARGET_DEFAULT_NORETURN. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 8deed48464e..782b46a4b16 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_get_tib_address. + * 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 562ccfdac22..ba89740a730 100644 --- a/gdb/target-delegates.c +++ b/gdb/target-delegates.c @@ -920,6 +920,19 @@ tdefault_set_trace_notes (struct target_ops *self, const char *arg1, const char return 0; } +static int +delegate_get_tib_address (struct target_ops *self, ptid_t arg1, CORE_ADDR *arg2) +{ + self = self->beneath; + return self->to_get_tib_address (self, arg1, arg2); +} + +static int +tdefault_get_tib_address (struct target_ops *self, ptid_t arg1, CORE_ADDR *arg2) +{ + tcomplain (); +} + static int delegate_supports_btrace (struct target_ops *self) { @@ -1092,6 +1105,8 @@ install_delegators (struct target_ops *ops) ops->to_set_trace_buffer_size = delegate_set_trace_buffer_size; if (ops->to_set_trace_notes == NULL) ops->to_set_trace_notes = delegate_set_trace_notes; + if (ops->to_get_tib_address == NULL) + ops->to_get_tib_address = delegate_get_tib_address; if (ops->to_supports_btrace == NULL) ops->to_supports_btrace = delegate_supports_btrace; } @@ -1177,5 +1192,6 @@ install_dummy_methods (struct target_ops *ops) ops->to_set_circular_trace_buffer = tdefault_set_circular_trace_buffer; ops->to_set_trace_buffer_size = tdefault_set_trace_buffer_size; ops->to_set_trace_notes = tdefault_set_trace_notes; + ops->to_get_tib_address = tdefault_get_tib_address; ops->to_supports_btrace = tdefault_supports_btrace; } diff --git a/gdb/target.c b/gdb/target.c index e0b5efbfd2f..eb6d2bd30fd 100644 --- a/gdb/target.c +++ b/gdb/target.c @@ -708,7 +708,7 @@ update_current_target (void) /* Do not inherit to_set_circular_trace_buffer. */ /* Do not inherit to_set_trace_buffer_size. */ /* Do not inherit to_set_trace_notes. */ - INHERIT (to_get_tib_address, t); + /* Do not inherit to_get_tib_address. */ INHERIT (to_set_permissions, t); INHERIT (to_static_tracepoint_marker_at, t); INHERIT (to_static_tracepoint_markers_by_strid, t); @@ -750,9 +750,6 @@ update_current_target (void) (void (*) (struct target_ops *, ptid_t)) target_ignore); current_target.to_read_description = NULL; - de_fault (to_get_tib_address, - (int (*) (struct target_ops *, ptid_t, CORE_ADDR *)) - tcomplain); de_fault (to_set_permissions, (void (*) (struct target_ops *)) target_ignore); diff --git a/gdb/target.h b/gdb/target.h index a82a2dd58fb..7bc6d32c762 100644 --- a/gdb/target.h +++ b/gdb/target.h @@ -927,7 +927,8 @@ struct target_ops /* Return the address of the start of the Thread Information Block a Windows OS specific feature. */ int (*to_get_tib_address) (struct target_ops *, - ptid_t ptid, CORE_ADDR *addr); + ptid_t ptid, CORE_ADDR *addr) + TARGET_DEFAULT_NORETURN (tcomplain ()); /* Send the new settings of write permission variables. */ void (*to_set_permissions) (struct target_ops *);