diff options
author | Alan Modra <amodra@gmail.com> | 2005-06-10 10:14:23 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2005-06-10 10:14:23 +0000 |
commit | 75758e9ddbb415f556721b13e3098625f6d95eaf (patch) | |
tree | 40894f959957727abbf91ea64237f8540b75164b /bfd/dwarf2.c | |
parent | 0df40b5e499b5502d6219a17192d4285bdfeef72 (diff) | |
download | gdb-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.
Diffstat (limited to 'bfd/dwarf2.c')
-rw-r--r-- | bfd/dwarf2.c | 24 |
1 files changed, 7 insertions, 17 deletions
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; |