diff options
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 7 | ||||
-rw-r--r-- | gas/dwarf2dbg.c | 7 |
2 files changed, 13 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index e3a4e07..8cba2db 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,10 @@ +2008-08-05 Alan Modra <amodra@bigpond.net.au> + + PR gas/6656 + * dwarf2dbg.c (dwarf2_directive_file): Disable gas generated + debug info if we see compiler generated debug info. + (dwarf2_directive_loc): Likewise. Remove redundant debug_type test. + 2008-08-04 Alan Modra <amodra@bigpond.net.au> * dwarf2dbg.c: Remove superfluous forward function declarations. diff --git a/gas/dwarf2dbg.c b/gas/dwarf2dbg.c index b1c96b5..b7857f2 100644 --- a/gas/dwarf2dbg.c +++ b/gas/dwarf2dbg.c @@ -525,6 +525,10 @@ dwarf2_directive_file (int dummy ATTRIBUTE_UNUSED) return NULL; } + /* A .file directive implies compiler generated debug information is + being supplied. Turn off gas generated debug info. */ + debug_type = DEBUG_NONE; + if (num < (int) files_in_use && files[num].filename != 0) { as_bad (_("file number %ld already allocated"), (long) num); @@ -543,7 +547,7 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED) /* If we see two .loc directives in a row, force the first one to be output now. */ - if (dwarf2_loc_directive_seen && debug_type != DEBUG_DWARF2) + if (dwarf2_loc_directive_seen) dwarf2_emit_insn (0); filenum = get_absolute_expression (); @@ -653,6 +657,7 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED) demand_empty_rest_of_line (); dwarf2_loc_directive_seen = TRUE; + debug_type = DEBUG_NONE; } void |