diff options
author | Cary Coutant <ccoutant@google.com> | 2013-07-01 20:12:11 +0000 |
---|---|---|
committer | Cary Coutant <ccoutant@google.com> | 2013-07-01 20:12:11 +0000 |
commit | 267257d249baacd6ca4452a02abcbc0ca62e4ba6 (patch) | |
tree | 3556c13f7ffe4a7780c2372fcedb2f7766af6bd1 /gold/dwarf_reader.h | |
parent | change gdb to use BFD's "dwz" functions (diff) | |
download | binutils-gdb-267257d249baacd6ca4452a02abcbc0ca62e4ba6.tar.gz binutils-gdb-267257d249baacd6ca4452a02abcbc0ca62e4ba6.tar.bz2 binutils-gdb-267257d249baacd6ca4452a02abcbc0ca62e4ba6.zip |
gold/
* dwarf_reader.cc (Dwarf_ranges_table::read_ranges_table): Save
reloc_type_.
(Dwarf_ranges_table::read_range_list): Call lookup_reloc.
(Dwarf_ranges_table::lookup_reloc): New function.
* dwarf_reader.h (Dwarf_ranges_table::Dwarf_ranges_table): Initialize
reloc_type_.
(Dwarf_ranges_table::lookup_reloc): New function.
(Dwarf_ranges_table::reloc_type_): New data member.
Diffstat (limited to 'gold/dwarf_reader.h')
-rw-r--r-- | gold/dwarf_reader.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/gold/dwarf_reader.h b/gold/dwarf_reader.h index 13d278a8e24..9ee483c35c1 100644 --- a/gold/dwarf_reader.h +++ b/gold/dwarf_reader.h @@ -338,7 +338,7 @@ class Dwarf_ranges_table Dwarf_ranges_table(Dwarf_info_reader* dwinfo) : dwinfo_(dwinfo), ranges_shndx_(0), ranges_buffer_(NULL), ranges_buffer_end_(NULL), owns_ranges_buffer_(false), - ranges_reloc_mapper_(NULL), output_section_offset_(0) + ranges_reloc_mapper_(NULL), reloc_type_(0), output_section_offset_(0) { } ~Dwarf_ranges_table() @@ -365,6 +365,11 @@ class Dwarf_ranges_table unsigned int ranges_shndx, off_t ranges_offset); + // Look for a relocation at offset OFF in the range table, + // and return the section index and offset of the target. + unsigned int + lookup_reloc(off_t off, off_t* target_off); + private: // The Dwarf_info_reader, for reading data. Dwarf_info_reader* dwinfo_; @@ -377,6 +382,8 @@ class Dwarf_ranges_table bool owns_ranges_buffer_; // Relocation mapper for the .debug_ranges section. Elf_reloc_mapper* ranges_reloc_mapper_; + // Type of the relocation section (SHT_REL or SHT_RELA). + unsigned int reloc_type_; // For incremental update links, this will hold the offset of the // input section within the output section. Offsets read from // relocated data will be relative to the output section, and need |