aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2005-06-10 10:14:23 +0000
committerAlan Modra <amodra@gmail.com>2005-06-10 10:14:23 +0000
commit75758e9ddbb415f556721b13e3098625f6d95eaf (patch)
tree40894f959957727abbf91ea64237f8540b75164b
parent0df40b5e499b5502d6219a17192d4285bdfeef72 (diff)
downloadgdb-75758e9ddbb415f556721b13e3098625f6d95eaf.zip
gdb-75758e9ddbb415f556721b13e3098625f6d95eaf.tar.gz
gdb-75758e9ddbb415f556721b13e3098625f6d95eaf.tar.bz2
* dwarf2.c (decode_line_info): Revert last change. Instead set
initial low_pc to -1 to avoid need to test whether loc_pc has been set.
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/dwarf2.c24
2 files changed, 13 insertions, 17 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 0fab521..407820a 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2005-06-10 Alan Modra <amodra@bigpond.net.au>
+
+ * dwarf2.c (decode_line_info): Revert last change. Instead set
+ initial low_pc to -1 to avoid need to test whether loc_pc has
+ been set.
+
2005-06-09 Christopher Faylor <cgf@timesys.com>
* coffcode.h (sec_to_styp_flags): Set appropriate section flags when
diff --git a/bfd/dwarf2.c b/bfd/dwarf2.c
index 8d21e5a..9f65413 100644
--- a/bfd/dwarf2.c
+++ b/bfd/dwarf2.c
@@ -1090,9 +1090,8 @@ decode_line_info (struct comp_unit *unit, struct dwarf2_debug *stash)
order using DW_LNE_set_address (e.g. Intel C++ 6.0 compiler
for ia64-Linux). Thus, to determine the low and high
address, we must compare on every DW_LNS_copy, etc. */
- bfd_vma low_pc = 0;
+ bfd_vma low_pc = (bfd_vma) -1;
bfd_vma high_pc = 0;
- bfd_boolean low_pc_set = FALSE;
/* Decode the table. */
while (! end_sequence)
@@ -1110,11 +1109,8 @@ decode_line_info (struct comp_unit *unit, struct dwarf2_debug *stash)
/* Append row to matrix using current values. */
add_line_info (table, address, filename, line, column, 0);
basic_block = 1;
- if (!low_pc_set || address < low_pc)
- {
- low_pc_set = TRUE;
- low_pc = address;
- }
+ if (address < low_pc)
+ low_pc = address;
if (address > high_pc)
high_pc = address;
}
@@ -1132,11 +1128,8 @@ decode_line_info (struct comp_unit *unit, struct dwarf2_debug *stash)
end_sequence = 1;
add_line_info (table, address, filename, line, column,
end_sequence);
- if (!low_pc_set || address < low_pc)
- {
- low_pc_set = TRUE;
- low_pc = address;
- }
+ if (address < low_pc)
+ low_pc = address;
if (address > high_pc)
high_pc = address;
arange_add (unit->abfd, &unit->arange, low_pc, high_pc);
@@ -1188,11 +1181,8 @@ decode_line_info (struct comp_unit *unit, struct dwarf2_debug *stash)
case DW_LNS_copy:
add_line_info (table, address, filename, line, column, 0);
basic_block = 0;
- if (!low_pc_set || address < low_pc)
- {
- low_pc_set = TRUE;
- low_pc = address;
- }
+ if (address < low_pc)
+ low_pc = address;
if (address > high_pc)
high_pc = address;
break;