From 759365550adde37c0e94b0109b128e41bc65418d Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Fri, 20 Sep 2002 07:28:54 +0000 Subject: [PATCH] (_bfd_dwarf2_find_nearest_line): If address length is zero, set it to 8 for (non-standard) 64-bit DWARF2 formats (e.g. IRIX64). --- bfd/ChangeLog | 6 ++++++ bfd/dwarf2.c | 7 +++++++ 2 files changed, 13 insertions(+) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 8874b8c..1bb5aa5 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2002-09-19 Nathan Tallent + + * dwarf2.c (_bfd_dwarf2_find_nearest_line): If address length is + zero, set it to 8 for (non-standard) 64-bit DWARF2 formats + (e.g. IRIX64). + 2002-09-19 Jakub Jelinek * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Clear .got word diff --git a/bfd/dwarf2.c b/bfd/dwarf2.c index 9c5e7b8..1cdd461 100644 --- a/bfd/dwarf2.c +++ b/bfd/dwarf2.c @@ -1907,6 +1907,13 @@ _bfd_dwarf2_find_nearest_line (abfd, section, symbols, offset, length = read_8_bytes (abfd, stash->info_ptr + 4); stash->info_ptr += 8; } + else if (length == 0) + { + /* Handle (non-standard) 64-bit DWARF2 formats. */ + offset_size = 8; + length = read_4_bytes (abfd, stash->info_ptr + 4); + stash->info_ptr += 4; + } } else length = read_8_bytes (abfd, stash->info_ptr); -- 2.7.4