diff options
author | Alan Modra <amodra@gmail.com> | 2012-08-11 04:41:28 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2012-08-11 04:41:28 +0000 |
commit | cf43a2fe99107aae4bfdf9bae8380729fb2c7b64 (patch) | |
tree | 8bc1af6d3b4dca7f1e671eea1fbe8b7bfb7bf236 /gold/output.cc | |
parent | bad7670a0e26d425d660376c6ac3ccc867783d32 (diff) | |
download | gdb-cf43a2fe99107aae4bfdf9bae8380729fb2c7b64.zip gdb-cf43a2fe99107aae4bfdf9bae8380729fb2c7b64.tar.gz gdb-cf43a2fe99107aae4bfdf9bae8380729fb2c7b64.tar.bz2 |
* object.h (Sized_relobj_file::find_shdr): New function.
(Sized_relobj_file::find_special_sections): New function.
* object.cc (Sized_relobj_file::find_shdr): New function.
(Sized_relobj_file::find_eh_frame): Use find_shdr.
(Sized_relobj_file::find_special_sections): New function, split out..
(Sized_relobj_file::do_read_symbols): ..from here.
* output.h (Output_data_got::replace_constant): New function.
(Output_data_got::num_entries): New function.
(Output_data_got::last_got_offset,set_got_size): Use num_entries.
(Output_data_got::got_offset): Protected rather than private.
(Output_data_got::replace_got_entry): New function.
* output.cc (Output_data_got::replace_got_entry): New function.
* powerpc.cc (class Powerpc_relobj): New.
(class Powerpc_relocate_functions): Delete all psymval variants or
convert to value,addend type. Delete pcrela, pcrela_unaligned.
Implement _ha functions using corresponding _hi function.
(Powerpc_relobj::find_special_sections): New function.
(Target_powerpc::do_make_elf_object): New function.
(class Output_data_got_powerpc): New.
(class Output_data_glink): New.
(class Powerpc_scan_relocatable_reloc): New.
Many more changes througout file.
Diffstat (limited to 'gold/output.cc')
-rw-r--r-- | gold/output.cc | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gold/output.cc b/gold/output.cc index 99890eb..9556abf 100644 --- a/gold/output.cc +++ b/gold/output.cc @@ -1701,6 +1701,18 @@ Output_data_got<size, big_endian>::add_got_entry_pair(Got_entry got_entry_1, } } +// Replace GOT entry I with a new value. + +template<int size, bool big_endian> +void +Output_data_got<size, big_endian>::replace_got_entry( + unsigned int i, + Got_entry got_entry) +{ + gold_assert(i < this->entries_.size()); + this->entries_[i] = got_entry; +} + // Output_data_dynamic::Dynamic_entry methods. // Write out the entry. |