aboutsummaryrefslogtreecommitdiff
path: root/gdb/reverse.c
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@polymtl.ca>2021-05-27 13:59:01 -0400
committerSimon Marchi <simon.marchi@polymtl.ca>2021-05-27 14:00:07 -0400
commit3947f654eabb1b6ccf8aad11ece46dc4b027f0f0 (patch)
treece1f687f4929daf2ce5aa10741c244cb1ab6e7ab /gdb/reverse.c
parent7bd22f56a3cf47c6743f7f7989a6fa07f935d31b (diff)
downloadbinutils-3947f654eabb1b6ccf8aad11ece46dc4b027f0f0.zip
binutils-3947f654eabb1b6ccf8aad11ece46dc4b027f0f0.tar.gz
binutils-3947f654eabb1b6ccf8aad11ece46dc4b027f0f0.tar.bz2
gdb: make add_com_alias accept target as a cmd_list_element
The alias creation functions currently accept a name to specify the target command. They pass this to add_alias_cmd, which needs to lookup the target command by name. Given that: - We don't support creating an alias for a command before that command exists. - We always use add_info_alias just after creating that target command, and therefore have access to the target command's cmd_list_element. ... change add_com_alias to accept the target command as a cmd_list_element (other functions are done in subsequent patches). This ensures we don't create the alias before the target command, because you need to get the cmd_list_element from somewhere when you call the alias creation function. And it avoids an unecessary command lookup. So it seems better to me in every aspect. gdb/ChangeLog: * command.h (add_com_alias): Accept target as cmd_list_element. Update callers. Change-Id: I24bed7da57221cc77606034de3023fedac015150
Diffstat (limited to 'gdb/reverse.c')
-rw-r--r--gdb/reverse.c37
1 files changed, 19 insertions, 18 deletions
diff --git a/gdb/reverse.c b/gdb/reverse.c
index e51defb..feca1b6 100644
--- a/gdb/reverse.c
+++ b/gdb/reverse.c
@@ -326,38 +326,39 @@ void _initialize_reverse ();
void
_initialize_reverse ()
{
- add_com ("reverse-step", class_run, reverse_step, _("\
+ cmd_list_element *reverse_step_cmd
+ = add_com ("reverse-step", class_run, reverse_step, _("\
Step program backward until it reaches the beginning of another source line.\n\
-Argument N means do this N times (or till program stops for another reason).")
- );
- add_com_alias ("rs", "reverse-step", class_run, 1);
+Argument N means do this N times (or till program stops for another reason)."));
+ add_com_alias ("rs", reverse_step_cmd, class_run, 1);
- add_com ("reverse-next", class_run, reverse_next, _("\
+ cmd_list_element *reverse_next_cmd
+ = add_com ("reverse-next", class_run, reverse_next, _("\
Step program backward, proceeding through subroutine calls.\n\
Like the \"reverse-step\" command as long as subroutine calls do not happen;\n\
when they do, the call is treated as one instruction.\n\
-Argument N means do this N times (or till program stops for another reason).")
- );
- add_com_alias ("rn", "reverse-next", class_run, 1);
+Argument N means do this N times (or till program stops for another reason)."));
+ add_com_alias ("rn", reverse_next_cmd, class_run, 1);
- add_com ("reverse-stepi", class_run, reverse_stepi, _("\
+ cmd_list_element *reverse_stepi_cmd
+ = add_com ("reverse-stepi", class_run, reverse_stepi, _("\
Step backward exactly one instruction.\n\
-Argument N means do this N times (or till program stops for another reason).")
- );
- add_com_alias ("rsi", "reverse-stepi", class_run, 0);
+Argument N means do this N times (or till program stops for another reason)."));
+ add_com_alias ("rsi", reverse_stepi_cmd, class_run, 0);
- add_com ("reverse-nexti", class_run, reverse_nexti, _("\
+ cmd_list_element *reverse_nexti_cmd
+ = add_com ("reverse-nexti", class_run, reverse_nexti, _("\
Step backward one instruction, but proceed through called subroutines.\n\
-Argument N means do this N times (or till program stops for another reason).")
- );
- add_com_alias ("rni", "reverse-nexti", class_run, 0);
+Argument N means do this N times (or till program stops for another reason)."));
+ add_com_alias ("rni", reverse_nexti_cmd, class_run, 0);
- add_com ("reverse-continue", class_run, reverse_continue, _("\
+ cmd_list_element *reverse_continue_cmd
+ = add_com ("reverse-continue", class_run, reverse_continue, _("\
Continue program being debugged but run it in reverse.\n\
If proceeding from breakpoint, a number N may be used as an argument,\n\
which means to set the ignore count of that breakpoint to N - 1 (so that\n\
the breakpoint won't break until the Nth time it is reached)."));
- add_com_alias ("rc", "reverse-continue", class_run, 0);
+ add_com_alias ("rc", reverse_continue_cmd, class_run, 0);
add_com ("reverse-finish", class_run, reverse_finish, _("\
Execute backward until just before selected stack frame is called."));