From ac01945bf17f3699de5493da23f14ea92549617a Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Thu, 16 Jan 2014 13:00:07 -0700 Subject: convert to_get_unwinder and to_get_tailcall_unwinder to methods This converts to_get_unwinder and to_get_tailcall_unwinder to methods and arranges for them to use the new delegation scheme. This just lets us avoid having a differing style (neither new-style nor INHERIT) of delegation in the tree. 2014-02-19 Tom Tromey * target.c (target_get_unwinder): Rewrite. (target_get_tailcall_unwinder): Rewrite. * record-btrace.c (record_btrace_to_get_unwinder): New function. (record_btrace_to_get_tailcall_unwinder): New function. (init_record_btrace_ops): Update. * target.h (struct target_ops) : Now function pointers. Use TARGET_DEFAULT_RETURN. --- gdb/target.c | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) (limited to 'gdb/target.c') diff --git a/gdb/target.c b/gdb/target.c index 911c279..4adc094 100644 --- a/gdb/target.c +++ b/gdb/target.c @@ -3822,13 +3822,7 @@ debug_to_prepare_to_store (struct target_ops *self, struct regcache *regcache) const struct frame_unwind * target_get_unwinder (void) { - struct target_ops *t; - - for (t = current_target.beneath; t != NULL; t = t->beneath) - if (t->to_get_unwinder != NULL) - return t->to_get_unwinder; - - return NULL; + return current_target.to_get_unwinder (¤t_target); } /* See target.h. */ @@ -3836,13 +3830,7 @@ target_get_unwinder (void) const struct frame_unwind * target_get_tailcall_unwinder (void) { - struct target_ops *t; - - for (t = current_target.beneath; t != NULL; t = t->beneath) - if (t->to_get_tailcall_unwinder != NULL) - return t->to_get_tailcall_unwinder; - - return NULL; + return current_target.to_get_tailcall_unwinder (¤t_target); } /* Default implementation of to_decr_pc_after_break. */ -- cgit v1.1