From f1bb75ab2a68b7d0878966f5a945eb7d33a48280 Mon Sep 17 00:00:00 2001 From: Sergio Durigan Junior Date: Thu, 16 May 2019 16:17:30 -0400 Subject: [PATCH] Slightly improve logic of some operations on stap-probe.c This patch contains three very small improvement on the logic of some operations we do on stap-probe.c. They don't change what the code does. Pushed as obvious. gdb/ChangeLog: 2019-05-16 Sergio Durigan Junior * stap-probe.c (stap_parse_register_operand): Make "if (*p->arg == '-')" and "else if". (stap_parse_single_operand): Join checks for "gdbarch_stap_parse_special_token_p" and "gdbarch_stap_parse_special_token" in the same "if" statement. Invert check when verifying for operation on register displacement. --- gdb/ChangeLog | 10 ++++++++++ gdb/stap-probe.c | 21 ++++++++++----------- 2 files changed, 20 insertions(+), 11 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 3389167adb..c89b7039e8 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,13 @@ +2019-05-16 Sergio Durigan Junior + + * stap-probe.c (stap_parse_register_operand): Make "if (*p->arg == + '-')" and "else if". + (stap_parse_single_operand): Join checks for + "gdbarch_stap_parse_special_token_p" and + "gdbarch_stap_parse_special_token" in the same "if" statement. + Invert check when verifying for operation on register + displacement. + 2019-05-16 Sergio Durigan Junior * stap-probe.c (stap_get_opcode): Update comment. diff --git a/gdb/stap-probe.c b/gdb/stap-probe.c index bc2f9fc85b..db9231558f 100644 --- a/gdb/stap-probe.c +++ b/gdb/stap-probe.c @@ -705,8 +705,7 @@ stap_parse_register_operand (struct stap_parse_info *p) pointer. */ ++p->arg; } - - if (*p->arg == '-') + else if (*p->arg == '-') { got_minus = true; ++p->arg; @@ -842,15 +841,15 @@ stap_parse_single_operand (struct stap_parse_info *p) const char *int_prefix = NULL; /* We first try to parse this token as a "special token". */ - if (gdbarch_stap_parse_special_token_p (gdbarch)) - if (gdbarch_stap_parse_special_token (gdbarch, p) != 0) - { - /* If the return value of the above function is not zero, - it means it successfully parsed the special token. + if (gdbarch_stap_parse_special_token_p (gdbarch) + && (gdbarch_stap_parse_special_token (gdbarch, p) != 0)) + { + /* If the return value of the above function is not zero, + it means it successfully parsed the special token. - If it is NULL, we try to parse it using our method. */ - return; - } + If it is NULL, we try to parse it using our method. */ + return; + } if (*p->arg == '-' || *p->arg == '~' || *p->arg == '+') { @@ -890,7 +889,7 @@ stap_parse_single_operand (struct stap_parse_info *p) { /* If we are here, it means it is a displacement. The only operations allowed here are `-' and `+'. */ - if (c == '~') + if (c != '-' && c != '+') error (_("Invalid operator `%c' for register displacement " "on expression `%s'."), c, p->saved_arg);