[binutils-gdb] kvx: use is_whitespace()
Jan Beulich
jbeulich@sourceware.org
Mon Feb 3 11:04:31 GMT 2025
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=4d3ebda16d2baa84bcc79d5481ed8f65bfee2679
commit 4d3ebda16d2baa84bcc79d5481ed8f65bfee2679
Author: Jan Beulich <jbeulich@suse.com>
Date: Mon Feb 3 12:03:07 2025 +0100
kvx: use is_whitespace()
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). Also convert open-coded checks where tabs were
already included. At the same time use is_end_of_stmt() instead of open-
coded checks in adjacent code.
Diff:
---
gas/config/kvx-parse.c | 11 +++++++----
gas/config/tc-kvx.c | 8 ++++----
2 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/gas/config/kvx-parse.c b/gas/config/kvx-parse.c
index 354985a7316..942eab33f95 100644
--- a/gas/config/kvx-parse.c
+++ b/gas/config/kvx-parse.c
@@ -597,12 +597,12 @@ read_token (struct token_s *tok)
{
if ('0' <= str[*begin - i] && str[*begin - i] <= '9')
last_imm_p = 1;
- else if (str[*begin - i] != ' ' && str[*begin - i] != '\t')
+ else if (!is_whitespace (str[*begin - i]))
break;
}
/* Eat up all leading spaces. */
- while (str[*begin] && (str[*begin] == ' ' || str[*begin] == '\n'))
+ while (str[*begin] && (is_whitespace (str[*begin]) || str[*begin] == '\n'))
*begin += 1;
*end = *begin;
@@ -624,7 +624,9 @@ read_token (struct token_s *tok)
}
if (str[*begin] == '.'
- && (!(*begin > 0 && (str[*begin - 1] == ' ' || is_delim(str[*begin - 1])))
+ && (!(*begin > 0
+ && (is_whitespace (str[*begin - 1])
+ || is_delim (str[*begin - 1])))
|| last_imm_p))
modifier_p = 1;
@@ -633,7 +635,8 @@ read_token (struct token_s *tok)
*end += 1;
/* Stop when reaching the start of the new token. */
- while (!(!str[*end] || is_delim (str[*end]) || str[*end] == ' ' || (modifier_p && str[*end] == '.')))
+ while (!(!str[*end] || is_delim (str[*end]) || is_whitespace (str[*end])
+ || (modifier_p && str[*end] == '.')))
*end += 1;
}
diff --git a/gas/config/tc-kvx.c b/gas/config/tc-kvx.c
index 02887453b42..942b1aba744 100644
--- a/gas/config/tc-kvx.c
+++ b/gas/config/tc-kvx.c
@@ -1279,7 +1279,7 @@ md_assemble (char *line)
if (get_byte_counter (now_seg) & 3)
as_fatal ("code segment not word aligned in md_assemble");
- while (line_cursor && line_cursor[0] && (line_cursor[0] == ' '))
+ while (is_whitespace (line_cursor[0]))
line_cursor++;
/* ;; was converted to "be" by line hook */
@@ -2125,7 +2125,7 @@ kvx_md_start_line_hook (void)
{
char *t;
- for (t = input_line_pointer; t && t[0] == ' '; t++);
+ for (t = input_line_pointer; is_whitespace (t[0]); t++);
/* Detect illegal syntax patterns:
* - two bundle ends on the same line: ;; ;;
@@ -2144,9 +2144,9 @@ kvx_md_start_line_hook (void)
while (tmp_t && tmp_t[0])
{
while (tmp_t && tmp_t[0] &&
- ((tmp_t[0] == ' ') || (tmp_t[0] == '\n')))
+ (is_whitespace (tmp_t[0]) || is_end_of_stmt (tmp_t[0])))
{
- if (tmp_t[0] == '\n')
+ if (is_end_of_stmt (tmp_t[0]))
newline_seen = true;
tmp_t++;
}
More information about the Binutils-cvs
mailing list