[PATCH v2 09/65] bpf: use is_whitespace()
Alan Modra
amodra@gmail.com
Tue Jan 28 09:21:47 GMT 2025
On Mon, Jan 27, 2025 at 05:08:18PM +0100, Jan Beulich wrote:
> Wherever blanks are permissible in input, tabs ought to be permissible,
> too. This is particularly relevant when -f is passed to gas (alongside
> appropriate input). At the same time use is_end_of_stmt() instead of
> open-coded nul char checks.
> ---
> v2: New.
>
> --- a/gas/config/tc-bpf.c
> +++ b/gas/config/tc-bpf.c
> @@ -1274,7 +1274,7 @@ parse_expression (char *s, expressionS *
> these whitespaces. */
> {
> char *p;
> - for (p = s - 1; p >= saved_s && *p == ' '; --p)
> + for (p = s - 1; p >= saved_s && is_whitespace (*p); --p)
> --s;
> }
>
> @@ -1501,7 +1501,7 @@ md_assemble (char *str ATTRIBUTE_UNUSED)
> if (*p == ' ')
> {
> /* Expect zero or more spaces. */
> - while (*s != '\0' && (*s == ' ' || *s == '\t'))
> + while (!is_end_of_stmt (*s) && is_whitespace (*s))
Just is_whitespace here.
> s += 1;
> p += 1;
> }
> @@ -1520,20 +1520,20 @@ md_assemble (char *str ATTRIBUTE_UNUSED)
> else if (*(p + 1) == 'w')
> {
> /* Expect zero or more spaces. */
> - while (*s != '\0' && (*s == ' ' || *s == '\t'))
> + while (!is_end_of_stmt (*s) && is_whitespace (*s))
Same.
> s += 1;
> p += 2;
> }
> else if (*(p + 1) == 'W')
> {
> /* Expect one or more spaces. */
> - if (*s != ' ' && *s != '\t')
> + if (!is_whitespace (*s))
> {
> PARSE_ERROR ("expected white space, got '%s'",
> s);
> break;
> }
> - while (*s != '\0' && (*s == ' ' || *s == '\t'))
> + while (!is_end_of_stmt (*s) && is_whitespace (*s))
Same.
> s += 1;
> p += 2;
> }
> @@ -1620,7 +1620,7 @@ md_assemble (char *str ATTRIBUTE_UNUSED)
>
> if (p[1] == 'I')
> {
> - while (*s == ' ' || *s == '\t')
> + while (is_whitespace (*s))
> s += 1;
> if (*s != '+' && *s != '-')
> {
> @@ -1643,7 +1643,7 @@ md_assemble (char *str ATTRIBUTE_UNUSED)
> {
> char *exp = NULL;
>
> - while (*s == ' ' || *s == '\t')
> + while (is_whitespace (*s))
> s += 1;
> if (*s != '+' && *s != '-')
> {
> @@ -1735,9 +1735,9 @@ md_assemble (char *str ATTRIBUTE_UNUSED)
> if (*p == '\0')
> {
> /* Allow white spaces at the end of the line. */
> - while (*s != '\0' && (*s == ' ' || *s == '\t'))
> + while (!is_end_of_stmt (*s) && is_whitespace (*s))
Again.
> s += 1;
> - if (*s == '\0')
> + if (is_end_of_stmt (*s))
> /* We parsed an instruction successfully. */
> break;
> PARSE_ERROR ("extra junk at end of line");
--
Alan Modra
More information about the Binutils
mailing list