From 1fb77080fd74d11c0dbccf812ed98ffa0b3edc4e Mon Sep 17 00:00:00 2001 From: Sergio Durigan Junior Date: Tue, 27 Sep 2016 16:21:48 -0400 Subject: Consolidate API of target_supports_multi_process This simple commit consolidates the API of target_supports_multi_process. Since both GDB and gdbserver use the same function prototype, all that was needed was to move create this prototype on gdb/target/target.h and turn the macros declared on gdb/{,gdbserver/}target.h into actual functions. Regtested (clean pass) on the BuildBot. gdb/ChangeLog: 2016-10-06 Sergio Durigan Junior * target.c (target_supports_multi_process): New function, moved from... * target.h (target_supports_multi_process): ... here. Remove macro. * target/target.h (target_supports_multi_process): New prototype. gdb/gdbserver/ChangeLog: 2016-10-06 Sergio Durigan Junior * target.c (target_supports_multi_process): New function, moved from... * target.h (target_supports_multi_process): ... here. Remove macro. --- gdb/ChangeLog | 8 ++++++++ gdb/gdbserver/ChangeLog | 7 +++++++ gdb/gdbserver/target.c | 9 +++++++++ gdb/gdbserver/target.h | 4 ---- gdb/target.c | 8 ++++++++ gdb/target.h | 6 ------ gdb/target/target.h | 5 +++++ 7 files changed, 37 insertions(+), 10 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index e1cfc19..95f2b92 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,11 @@ +2016-10-06 Sergio Durigan Junior + + * target.c (target_supports_multi_process): New function, moved + from... + * target.h (target_supports_multi_process): ... here. Remove + macro. + * target/target.h (target_supports_multi_process): New prototype. + 2016-10-06 Pedro Alves * cp-valprint.c (vtbl_ptr_name): Write "extern const" instead of diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 42edcc7..371431b 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,10 @@ +2016-10-06 Sergio Durigan Junior + + * target.c (target_supports_multi_process): New function, moved + from... + * target.h (target_supports_multi_process): ... here. Remove + macro. + 2016-10-05 Tom Tromey PR remote/20655: diff --git a/gdb/gdbserver/target.c b/gdb/gdbserver/target.c index fd7c714..249a063 100644 --- a/gdb/gdbserver/target.c +++ b/gdb/gdbserver/target.c @@ -302,6 +302,15 @@ target_continue (ptid_t ptid, enum gdb_signal signal) (*the_target->resume) (&resume_info, 1); } +/* See target/target.h. */ + +int +target_supports_multi_process (void) +{ + return (the_target->supports_multi_process != NULL ? + (*the_target->supports_multi_process) () : 0); +} + int start_non_stop (int nonstop) { diff --git a/gdb/gdbserver/target.h b/gdb/gdbserver/target.h index 26f7422..d098a92 100644 --- a/gdb/gdbserver/target.h +++ b/gdb/gdbserver/target.h @@ -535,10 +535,6 @@ int kill_inferior (int); #define target_async(enable) \ (the_target->async ? (*the_target->async) (enable) : 0) -#define target_supports_multi_process() \ - (the_target->supports_multi_process ? \ - (*the_target->supports_multi_process) () : 0) - #define target_process_qsupported(features, count) \ do \ { \ diff --git a/gdb/target.c b/gdb/target.c index b6a7e64..cb89e75 100644 --- a/gdb/target.c +++ b/gdb/target.c @@ -2727,6 +2727,14 @@ target_supports_disable_randomization (void) return 0; } +/* See target/target.h. */ + +int +target_supports_multi_process (void) +{ + return (*current_target.to_supports_multi_process) (¤t_target); +} + char * target_get_osdata (const char *type) { diff --git a/gdb/target.h b/gdb/target.h index b458970..176f332 100644 --- a/gdb/target.h +++ b/gdb/target.h @@ -1380,12 +1380,6 @@ struct address_space *target_thread_address_space (ptid_t); int target_info_proc (const char *, enum info_proc_what); -/* Returns true if this target can debug multiple processes - simultaneously. */ - -#define target_supports_multi_process() \ - (*current_target.to_supports_multi_process) (¤t_target) - /* Returns true if this target can disable address space randomization. */ int target_supports_disable_randomization (void); diff --git a/gdb/target/target.h b/gdb/target/target.h index be41fa7..2f4c716 100644 --- a/gdb/target/target.h +++ b/gdb/target/target.h @@ -90,4 +90,9 @@ extern ptid_t target_wait (ptid_t ptid, struct target_waitstatus *status, extern void target_mourn_inferior (ptid_t ptid); +/* Return 1 if this target can debug multiple processes + simultaneously, zero otherwise. */ + +extern int target_supports_multi_process (void); + #endif /* TARGET_COMMON_H */ -- cgit v1.1