aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/ChangeLog4
-rw-r--r--gas/dwarf2dbg.c6
2 files changed, 9 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index d75371e..901e73e 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,7 @@
+2001-04-12 Jason Merrill <jason_merrill@redhat.com>
+
+ * dwarf2dbg.c (process_entries): Don't optimize redundant line notes.
+
2001-04-12 Alexandre Oliva <aoliva@redhat.com>
* expr.c (operand): Pass &c to md_parse_name().
diff --git a/gas/dwarf2dbg.c b/gas/dwarf2dbg.c
index f902b15..8607e21 100644
--- a/gas/dwarf2dbg.c
+++ b/gas/dwarf2dbg.c
@@ -873,7 +873,11 @@ process_entries (seg, e)
changed = 1;
}
- if (line != e->loc.line || changed)
+ /* Don't try to optimize away redundant entries; gdb wants two
+ entries for a function where the code starts on the same line as
+ the {, and there's no way to identify that case here. Trust gcc
+ to optimize appropriately. */
+ if (1 /* line != e->loc.line || changed */)
{
int line_delta = e->loc.line - line;
if (frag == NULL)