aboutsummaryrefslogtreecommitdiff
path: root/gas/dwarf2dbg.c
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2007-08-29 20:03:43 +0000
committerDaniel Jacobowitz <drow@false.org>2007-08-29 20:03:43 +0000
commit851feff8738f722820d25f7e90fc58babc5421be (patch)
tree0d84c0dbb79f8589ea9b2cbe4748d28a924072bf /gas/dwarf2dbg.c
parent5cee3fe66dd1a884b87a3b518ab8beaa9cf73d31 (diff)
downloadgdb-851feff8738f722820d25f7e90fc58babc5421be.zip
gdb-851feff8738f722820d25f7e90fc58babc5421be.tar.gz
gdb-851feff8738f722820d25f7e90fc58babc5421be.tar.bz2
* dwarf2dbg.c (dwarf2_directive_loc): Emit duplicate .loc directives.
* gas/lns/lns-duplicate.d, gas/lns/lns-duplicate.s: New. * gas/lns/lns.exp: Run lns-duplicate.
Diffstat (limited to 'gas/dwarf2dbg.c')
-rw-r--r--gas/dwarf2dbg.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gas/dwarf2dbg.c b/gas/dwarf2dbg.c
index 93b5f48..39e434c 100644
--- a/gas/dwarf2dbg.c
+++ b/gas/dwarf2dbg.c
@@ -570,6 +570,11 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
{
offsetT filenum, line;
+ /* If we see two .loc directives in a row, force the first one to be
+ output now. */
+ if (loc_directive_seen)
+ dwarf2_emit_insn (0);
+
filenum = get_absolute_expression ();
SKIP_WHITESPACE ();
line = get_absolute_expression ();