diff options
author | Nick Clifton <nickc@redhat.com> | 2015-03-05 12:14:26 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2015-03-05 12:14:26 +0000 |
commit | 425bd9e1bb32b25881dd20d76678d041f7bf04f8 (patch) | |
tree | e503906efb4cab1957e3a053fda5d5b8c854bb13 /bfd/libbfd-in.h | |
parent | f5771b1d96f844e0767a15b258b2de2d4cc52123 (diff) | |
download | gdb-425bd9e1bb32b25881dd20d76678d041f7bf04f8.zip gdb-425bd9e1bb32b25881dd20d76678d041f7bf04f8.tar.gz gdb-425bd9e1bb32b25881dd20d76678d041f7bf04f8.tar.bz2 |
Allows the binutils to cope with PE binaries where the section addresses have been changed, but the DWARF debug info has not been altered.
PR binutils/18025
* coffgen.c (coff_find_nearest_line_with_names): If the dwarf2
lookup fails, check for an address bias in the dwarf info, and if
one exists, retry the lookup with the biased value.
* dwarf2.c (_bfd_dwarf2_find_symbol_bias): New function.
Determines if a bias exists bewteen the addresses of functions
based on DWARF information vs symbol table information.
* libbfd-in.h (_bfd_dwarf2_find_symbol_bias): Prototype.
* libbfd.h: Regenerate.
Diffstat (limited to 'bfd/libbfd-in.h')
-rw-r--r-- | bfd/libbfd-in.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/bfd/libbfd-in.h b/bfd/libbfd-in.h index 7c661e3..06fa652 100644 --- a/bfd/libbfd-in.h +++ b/bfd/libbfd-in.h @@ -551,6 +551,10 @@ extern bfd_boolean _bfd_dwarf2_find_nearest_line const char **, const char **, unsigned int *, unsigned int *, const struct dwarf_debug_section *, unsigned int, void **); +/* Find the bias between DWARF addresses and real addresses. */ +extern bfd_signed_vma _bfd_dwarf2_find_symbol_bias + (asymbol **, void **); + /* Find inliner info after calling bfd_find_nearest_line. */ extern bfd_boolean _bfd_dwarf2_find_inliner_info (bfd *, const char **, const char **, unsigned int *, void **); |