[COMMITTED PATCH] ARM gas: handle whitespace before } (in macro expansion)
Roland McGrath
mcgrathr@google.com
Mon Jun 24 23:26:00 GMT 2013
This should have been part of the previous change. I thought I had covered
cases with whitespace around a } too, but I misremembered.
I've committed this as an obvious-enough follow-on to the change just
approved and committed.
Thanks,
Roland
gas/
* config/tc-arm.c (parse_reg_list): Use skip_past_char for '}',
so it skips whitespace before it.
(s_arm_unwind_save_mmxwr, s_arm_unwind_save_mmxwcg): Likewise.
gas/testsuite/
* gas/arm/macro-vld1.s: Add a case with whitespace before '}'.
* gas/arm/macro-vld1.d: Update.
--- a/gas/config/tc-arm.c
+++ b/gas/config/tc-arm.c
@@ -1641,7 +1641,7 @@ parse_reg_list (char ** strp)
|| (in_range = 1, *str++ == '-'));
str--;
- if (*str++ != '}')
+ if (skip_past_char (&str, '}') == FAIL)
{
first_error (_("missing `}'"));
return FAIL;
@@ -3935,8 +3935,7 @@ s_arm_unwind_save_mmxwr (void)
}
while (skip_past_comma (&input_line_pointer) != FAIL);
- if (*input_line_pointer == '}')
- input_line_pointer++;
+ skip_past_char (&input_line_pointer, '}');
demand_empty_rest_of_line ();
@@ -4070,8 +4069,7 @@ s_arm_unwind_save_mmxwcg (void)
}
while (skip_past_comma (&input_line_pointer) != FAIL);
- if (*input_line_pointer == '}')
- input_line_pointer++;
+ skip_past_char (&input_line_pointer, '}');
demand_empty_rest_of_line ();
--- a/gas/testsuite/gas/arm/macro-vld1.d
+++ b/gas/testsuite/gas/arm/macro-vld1.d
@@ -6,3 +6,4 @@ Disassembly of section \.text:
0+ <.*>:
\s*0:\s+f420070f\s+vld1.8\s+{d0},\s*\[r0\]
+\s*4:\s+f420070f\s+vld1.8\s+{d0},\s*\[r0\]
--- a/gas/testsuite/gas/arm/macro-vld1.s
+++ b/gas/testsuite/gas/arm/macro-vld1.s
@@ -7,3 +7,4 @@
.purgem _sfi_breg_doit
.endm
sfi_breg r0, vld1.8 {d0}, [\B]
+ sfi_breg r0, vld1.8 { d0 }, [\B]
More information about the Binutils
mailing list