aboutsummaryrefslogtreecommitdiff
path: root/gas/dwarf2dbg.c
diff options
context:
space:
mode:
Diffstat (limited to 'gas/dwarf2dbg.c')
-rw-r--r--gas/dwarf2dbg.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/gas/dwarf2dbg.c b/gas/dwarf2dbg.c
index 07aa646..5bb6be0 100644
--- a/gas/dwarf2dbg.c
+++ b/gas/dwarf2dbg.c
@@ -670,8 +670,7 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
char *p, c;
offsetT value;
- p = input_line_pointer;
- c = get_symbol_end ();
+ c = get_symbol_name (& p);
if (strcmp (p, "basic_block") == 0)
{
@@ -690,7 +689,7 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
}
else if (strcmp (p, "is_stmt") == 0)
{
- *input_line_pointer = c;
+ (void) restore_line_pointer (c);
value = get_absolute_expression ();
if (value == 0)
current.flags &= ~DWARF2_FLAG_IS_STMT;
@@ -704,7 +703,7 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
}
else if (strcmp (p, "isa") == 0)
{
- *input_line_pointer = c;
+ (void) restore_line_pointer (c);
value = get_absolute_expression ();
if (value >= 0)
current.isa = value;
@@ -716,7 +715,7 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
}
else if (strcmp (p, "discriminator") == 0)
{
- *input_line_pointer = c;
+ (void) restore_line_pointer (c);
value = get_absolute_expression ();
if (value >= 0)
current.discriminator = value;
@@ -729,11 +728,11 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
else
{
as_bad (_("unknown .loc sub-directive `%s'"), p);
- *input_line_pointer = c;
+ (void) restore_line_pointer (c);
return;
}
- SKIP_WHITESPACE ();
+ SKIP_WHITESPACE_AFTER_NAME ();
}
demand_empty_rest_of_line ();