From: Maciej W. Rozycki Date: Mon, 10 Feb 2025 22:11:25 +0000 (+0000) Subject: MIPS16/GAS: Streamline forced size suffix handling code X-Git-Tag: binutils-2_45~1618 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8eca085f0ad6319f2ba331d27281a478b67992d3;p=thirdparty%2Fbinutils-gdb.git MIPS16/GAS: Streamline forced size suffix handling code Clean up after commit 112cf77b1855 ("MIPS: use is_whitespace()") and untangle the code flow in the handling of forced size suffixes, noting that owing to the loop right above the only data `c' can hold at this point is '\0', '.', or a white-space character. No functional change. --- diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index c5d36c24558..d01b6a5ba05 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -14394,17 +14394,8 @@ mips16_ip (char *str, struct mips_cl_insn *insn) c = *end; l = 0; - switch (c) + if (c == '.') { - case '\0': - break; - - default: - if (is_whitespace (*s)) - s++; - break; - - case '.': s++; if (*s == 't') { @@ -14416,16 +14407,14 @@ mips16_ip (char *str, struct mips_cl_insn *insn) l = 4; s++; } - if (l != 0) + if (l == 0 || (*s != '\0' && !is_whitespace (*s++))) { - if (*s == '\0') - break; - else if (is_whitespace (*s++)) - break; + set_insn_error (0, _("unrecognized opcode")); + return; } - set_insn_error (0, _("unrecognized opcode")); - return; } + else if (is_whitespace (c)) + s++; forced_insn_length = l; *end = 0;