diff options
author | Tom Tromey <tom@tromey.com> | 2020-09-28 19:38:25 -0600 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2020-09-28 19:52:21 -0600 |
commit | 8a3ecb79b031d578cbdbac5e70784c157ff6387d (patch) | |
tree | 111407603d927f6656f00c9e778e62cf7202c20a | |
parent | 55f6301ac03f8865f486fa2fe8019bd5129f86e3 (diff) | |
download | binutils-8a3ecb79b031d578cbdbac5e70784c157ff6387d.zip binutils-8a3ecb79b031d578cbdbac5e70784c157ff6387d.tar.gz binutils-8a3ecb79b031d578cbdbac5e70784c157ff6387d.tar.bz2 |
Turn target_can_lock_scheduler into a function
This changes the object-like macro target_can_lock_scheduler into an
inline function.
gdb/ChangeLog
2020-09-28 Tom Tromey <tom@tromey.com>
* infrun.c (set_schedlock_func): Update.
* target.h (target_can_lock_scheduler): Now a function.
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/infrun.c | 2 | ||||
-rw-r--r-- | gdb/target.h | 8 |
3 files changed, 12 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 2c29fff3..fb533ae 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2020-09-28 Tom Tromey <tom@tromey.com> + * infrun.c (set_schedlock_func): Update. + * target.h (target_can_lock_scheduler): Now a function. + +2020-09-28 Tom Tromey <tom@tromey.com> + * inferior.h (class inferior) <has_execution>: Update. * windows-tdep.c (windows_solib_create_inferior_hook): Update. * valops.c (find_function_in_inferior) diff --git a/gdb/infrun.c b/gdb/infrun.c index 6ff362c..17b406d 100644 --- a/gdb/infrun.c +++ b/gdb/infrun.c @@ -2099,7 +2099,7 @@ show_scheduler_mode (struct ui_file *file, int from_tty, static void set_schedlock_func (const char *args, int from_tty, struct cmd_list_element *c) { - if (!target_can_lock_scheduler) + if (!target_can_lock_scheduler ()) { scheduler_mode = schedlock_off; error (_("Target '%s' cannot support this command."), target_shortname); diff --git a/gdb/target.h b/gdb/target.h index 20e7ae3..9ebb0c3 100644 --- a/gdb/target.h +++ b/gdb/target.h @@ -1837,8 +1837,12 @@ extern bool target_has_execution (inferior *inf = nullptr); /* Can the target support the debugger control of thread execution? Can it lock the thread scheduler? */ -#define target_can_lock_scheduler \ - (current_top_target ()->get_thread_control_capabilities () & tc_schedlock) +static inline bool +target_can_lock_scheduler () +{ + return (current_top_target ()->get_thread_control_capabilities () + & tc_schedlock) != 0; +} /* Controls whether async mode is permitted. */ extern bool target_async_permitted; |