mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-10-19 22:03:57 +08:00
Turn target_can_execute_reverse into function
This changes target_can_execute_reverse from an object-like macro to an inline function. gdb/ChangeLog 2020-09-28 Tom Tromey <tom@tromey.com> * mi/mi-main.c (exec_reverse_continue) (mi_cmd_list_target_features): Update. * infrun.c (set_exec_direction_func): Update. * target.c (default_execution_direction): Update. * reverse.c (exec_reverse_once): Update. * target.h (target_can_execute_reverse): Now a function.
This commit is contained in:
@ -1,3 +1,12 @@
|
|||||||
|
2020-09-28 Tom Tromey <tom@tromey.com>
|
||||||
|
|
||||||
|
* mi/mi-main.c (exec_reverse_continue)
|
||||||
|
(mi_cmd_list_target_features): Update.
|
||||||
|
* infrun.c (set_exec_direction_func): Update.
|
||||||
|
* target.c (default_execution_direction): Update.
|
||||||
|
* reverse.c (exec_reverse_once): Update.
|
||||||
|
* target.h (target_can_execute_reverse): Now a function.
|
||||||
|
|
||||||
2020-09-28 Tom Tromey <tom@tromey.com>
|
2020-09-28 Tom Tromey <tom@tromey.com>
|
||||||
|
|
||||||
* tui/tui-regs.c (tui_get_register)
|
* tui/tui-regs.c (tui_get_register)
|
||||||
|
@ -9145,7 +9145,7 @@ static void
|
|||||||
set_exec_direction_func (const char *args, int from_tty,
|
set_exec_direction_func (const char *args, int from_tty,
|
||||||
struct cmd_list_element *cmd)
|
struct cmd_list_element *cmd)
|
||||||
{
|
{
|
||||||
if (target_can_execute_reverse)
|
if (target_can_execute_reverse ())
|
||||||
{
|
{
|
||||||
if (!strcmp (exec_direction, exec_forward))
|
if (!strcmp (exec_direction, exec_forward))
|
||||||
execution_direction = EXEC_FORWARD;
|
execution_direction = EXEC_FORWARD;
|
||||||
|
@ -321,7 +321,7 @@ exec_reverse_continue (char **argv, int argc)
|
|||||||
if (dir == EXEC_REVERSE)
|
if (dir == EXEC_REVERSE)
|
||||||
error (_("Already in reverse mode."));
|
error (_("Already in reverse mode."));
|
||||||
|
|
||||||
if (!target_can_execute_reverse)
|
if (!target_can_execute_reverse ())
|
||||||
error (_("Target %s does not support this command."), target_shortname);
|
error (_("Target %s does not support this command."), target_shortname);
|
||||||
|
|
||||||
scoped_restore save_exec_dir = make_scoped_restore (&execution_direction,
|
scoped_restore save_exec_dir = make_scoped_restore (&execution_direction,
|
||||||
@ -1684,7 +1684,7 @@ mi_cmd_list_target_features (const char *command, char **argv, int argc)
|
|||||||
ui_out_emit_list list_emitter (uiout, "features");
|
ui_out_emit_list list_emitter (uiout, "features");
|
||||||
if (mi_async_p ())
|
if (mi_async_p ())
|
||||||
uiout->field_string (NULL, "async");
|
uiout->field_string (NULL, "async");
|
||||||
if (target_can_execute_reverse)
|
if (target_can_execute_reverse ())
|
||||||
uiout->field_string (NULL, "reverse");
|
uiout->field_string (NULL, "reverse");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -44,7 +44,7 @@ exec_reverse_once (const char *cmd, const char *args, int from_tty)
|
|||||||
error (_("Already in reverse mode. Use '%s' or 'set exec-dir forward'."),
|
error (_("Already in reverse mode. Use '%s' or 'set exec-dir forward'."),
|
||||||
cmd);
|
cmd);
|
||||||
|
|
||||||
if (!target_can_execute_reverse)
|
if (!target_can_execute_reverse ())
|
||||||
error (_("Target %s does not support this command."), target_shortname);
|
error (_("Target %s does not support this command."), target_shortname);
|
||||||
|
|
||||||
std::string reverse_command = string_printf ("%s %s", cmd, args ? args : "");
|
std::string reverse_command = string_printf ("%s %s", cmd, args ? args : "");
|
||||||
|
@ -525,7 +525,7 @@ default_get_ada_task_ptid (struct target_ops *self, long lwp, long tid)
|
|||||||
static enum exec_direction_kind
|
static enum exec_direction_kind
|
||||||
default_execution_direction (struct target_ops *self)
|
default_execution_direction (struct target_ops *self)
|
||||||
{
|
{
|
||||||
if (!target_can_execute_reverse)
|
if (!target_can_execute_reverse ())
|
||||||
return EXEC_FORWARD;
|
return EXEC_FORWARD;
|
||||||
else if (!target_can_async_p ())
|
else if (!target_can_async_p ())
|
||||||
return EXEC_FORWARD;
|
return EXEC_FORWARD;
|
||||||
|
@ -2117,8 +2117,11 @@ extern int target_ranged_break_num_registers (void);
|
|||||||
extern int target_masked_watch_num_registers (CORE_ADDR addr, CORE_ADDR mask);
|
extern int target_masked_watch_num_registers (CORE_ADDR addr, CORE_ADDR mask);
|
||||||
|
|
||||||
/* Target can execute in reverse? */
|
/* Target can execute in reverse? */
|
||||||
#define target_can_execute_reverse \
|
static inline bool
|
||||||
current_top_target ()->can_execute_reverse ()
|
target_can_execute_reverse ()
|
||||||
|
{
|
||||||
|
return current_top_target ()->can_execute_reverse ();
|
||||||
|
}
|
||||||
|
|
||||||
extern const struct target_desc *target_read_description (struct target_ops *);
|
extern const struct target_desc *target_read_description (struct target_ops *);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user