diff options
author | Vladimir Radosavljevic <vladimir.radosavljevic@imgtec.com> | 2016-05-19 14:57:14 -0700 |
---|---|---|
committer | Cary Coutant <ccoutant@gmail.com> | 2016-05-19 15:04:51 -0700 |
commit | 15eb1bebe1525ba8baf1f56e9df791cff146a352 (patch) | |
tree | 1f0d08b062d9c808eac9d5fb63204cb8b4b2eaa2 /gold/ChangeLog | |
parent | 7d4d970973c4735dcdd2a69d645309f167a1d9d4 (diff) | |
download | gdb-15eb1bebe1525ba8baf1f56e9df791cff146a352.zip gdb-15eb1bebe1525ba8baf1f56e9df791cff146a352.tar.gz gdb-15eb1bebe1525ba8baf1f56e9df791cff146a352.tar.bz2 |
Fix non-deterministic behavior when generating MIPS GOT.
* mips.cc (Mips_got_entry::Mips_got_entry): Remove object argument
for global got symbols, and set addend to 0.
(Mips_got_entry::hash): Change hash algorithm.
(Mips_got_entry::equals): Refactor.
(Mips_got_entry::object): Return input object for local got symbols
from union d.
(Mips_got_entry::addend): Change return of the relocation addend.
(Mips_got_entry::addend_): Move from union d.
(Mips_got_entry::object_): Move into union d.
(class Mips_symbol_hash): New class.
(Mips_got_info::Global_got_entry_set): New type.
(Mips_got_info::global_got_symbols): Change return type to
Global_got_entry_set.
(Mips_got_info::global_got_symbols_): Change type to
Global_got_entry_set.
(Mips_symbol::hash): New method.
(Mips_output_data_la25_stub::symbols_): Change type to std::vector.
(Mips_output_data_mips_stubs::Mips_stubs_entry_set): New type.
(Mips_output_data_mips_stubs::symbols_): Change type to
Mips_stubs_entry_set.
(Mips_got_info::record_global_got_symbol): Don't pass object
argument when creating global got symbol.
(Mips_got_info::record_got_entry): Remove find before inserting
got entries.
(Mips_got_info::add_reloc_only_entries): Change type of iterator
to Global_got_entry_set.
(Mips_got_info::count_got_symbols): Likewise.
(Mips_output_data_la25_stub::create_la25_stub): Use push_back
for adding entries to symbols_.
(Mips_output_data_la25_stub::do_write): Change type of iterator
to std::vector.
(Mips_output_data_mips_stubs::set_lazy_stub_offsets): Change type
of iterator to Mips_stubs_entry_set.
(Mips_output_data_mips_stubs::set_needs_dynsym_value): Likewise.
(Mips_output_data_mips_stubs::do_write): Likewise.
Diffstat (limited to 'gold/ChangeLog')
-rw-r--r-- | gold/ChangeLog | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index 0bc160a..6a9b045 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,41 @@ +2016-05-19 Vladimir Radosavljevic <vladimir.radosavljevic@imgtec.com> + + * mips.cc (Mips_got_entry::Mips_got_entry): Remove object argument + for global got symbols, and set addend to 0. + (Mips_got_entry::hash): Change hash algorithm. + (Mips_got_entry::equals): Refactor. + (Mips_got_entry::object): Return input object for local got symbols + from union d. + (Mips_got_entry::addend): Change return of the relocation addend. + (Mips_got_entry::addend_): Move from union d. + (Mips_got_entry::object_): Move into union d. + (class Mips_symbol_hash): New class. + (Mips_got_info::Global_got_entry_set): New type. + (Mips_got_info::global_got_symbols): Change return type to + Global_got_entry_set. + (Mips_got_info::global_got_symbols_): Change type to + Global_got_entry_set. + (Mips_symbol::hash): New method. + (Mips_output_data_la25_stub::symbols_): Change type to std::vector. + (Mips_output_data_mips_stubs::Mips_stubs_entry_set): New type. + (Mips_output_data_mips_stubs::symbols_): Change type to + Mips_stubs_entry_set. + (Mips_got_info::record_global_got_symbol): Don't pass object + argument when creating global got symbol. + (Mips_got_info::record_got_entry): Remove find before inserting + got entries. + (Mips_got_info::add_reloc_only_entries): Change type of iterator + to Global_got_entry_set. + (Mips_got_info::count_got_symbols): Likewise. + (Mips_output_data_la25_stub::create_la25_stub): Use push_back + for adding entries to symbols_. + (Mips_output_data_la25_stub::do_write): Change type of iterator + to std::vector. + (Mips_output_data_mips_stubs::set_lazy_stub_offsets): Change type + of iterator to Mips_stubs_entry_set. + (Mips_output_data_mips_stubs::set_needs_dynsym_value): Likewise. + (Mips_output_data_mips_stubs::do_write): Likewise. + 2016-05-06 Han Shen <shenhan@google.com> PR gold/19987. |