diff options
author | Alan Modra <amodra@gmail.com> | 2012-10-12 09:39:19 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2012-10-12 09:39:19 +0000 |
commit | 03e25981b675b8d2bab22acca695fd16b8736e34 (patch) | |
tree | 34966182a7cd0426023f03a57bf7cc69e5e819f3 /gold | |
parent | 87332029031f3b341a3f8d9035e7e1d367b08184 (diff) | |
download | gdb-03e25981b675b8d2bab22acca695fd16b8736e34.zip gdb-03e25981b675b8d2bab22acca695fd16b8736e34.tar.gz gdb-03e25981b675b8d2bab22acca695fd16b8736e34.tar.bz2 |
* powerpc.cc (Output_data_plt_powerpc::add_entry, add_ifunc_entry,
add_local_ifunc_entry): Revert last change.
(Target_powerpc::make_plt_entry, make_local_ifunc_plt_entry): Likewise.
Diffstat (limited to 'gold')
-rw-r--r-- | gold/ChangeLog | 6 | ||||
-rw-r--r-- | gold/powerpc.cc | 29 |
2 files changed, 17 insertions, 18 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index d9a5307..cbedb79 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,9 @@ +2012-10-12 Alan Modra <amodra@gmail.com> + + * powerpc.cc (Output_data_plt_powerpc::add_entry, add_ifunc_entry, + add_local_ifunc_entry): Revert last change. + (Target_powerpc::make_plt_entry, make_local_ifunc_plt_entry): Likewise. + 2012-10-05 Alan Modra <amodra@gmail.com> * powerpc.cc (Target_powerpc::do_plt_address_for_local, diff --git a/gold/powerpc.cc b/gold/powerpc.cc index 7f9774f..fc9264e 100644 --- a/gold/powerpc.cc +++ b/gold/powerpc.cc @@ -1544,13 +1544,13 @@ class Output_data_plt_powerpc : public Output_section_data_build { } // Add an entry to the PLT. - bool + void add_entry(Symbol*); - bool + void add_ifunc_entry(Symbol*); - bool + void add_local_ifunc_entry(Sized_relobj_file<size, big_endian>*, unsigned int); // Return the .rela.plt section data. @@ -1611,7 +1611,7 @@ class Output_data_plt_powerpc : public Output_section_data_build // Add an entry to the PLT. template<int size, bool big_endian> -bool +void Output_data_plt_powerpc<size, big_endian>::add_entry(Symbol* gsym) { if (!gsym->has_plt_offset()) @@ -1625,15 +1625,13 @@ Output_data_plt_powerpc<size, big_endian>::add_entry(Symbol* gsym) this->rel_->add_global(gsym, dynrel, this, off, 0); off += plt_entry_size; this->set_current_data_size(off); - return true; } - return false; } // Add an entry for a global ifunc symbol that resolves locally, to the IPLT. template<int size, bool big_endian> -bool +void Output_data_plt_powerpc<size, big_endian>::add_ifunc_entry(Symbol* gsym) { if (!gsym->has_plt_offset()) @@ -1646,15 +1644,13 @@ Output_data_plt_powerpc<size, big_endian>::add_ifunc_entry(Symbol* gsym) this->rel_->add_symbolless_global_addend(gsym, dynrel, this, off, 0); off += plt_entry_size; this->set_current_data_size(off); - return true; } - return false; } // Add an entry for a local ifunc symbol to the IPLT. template<int size, bool big_endian> -bool +void Output_data_plt_powerpc<size, big_endian>::add_local_ifunc_entry( Sized_relobj_file<size, big_endian>* relobj, unsigned int local_sym_index) @@ -1670,9 +1666,7 @@ Output_data_plt_powerpc<size, big_endian>::add_local_ifunc_entry( this, off, 0); off += plt_entry_size; this->set_current_data_size(off); - return true; } - return false; } static const uint32_t add_0_11_11 = 0x7c0b5a14; @@ -2430,16 +2424,15 @@ Target_powerpc<size, big_endian>::make_plt_entry( { if (this->iplt_ == NULL) this->make_iplt_section(layout); - if (this->iplt_->add_ifunc_entry(gsym)) - this->glink_->add_entry(object, gsym, reloc); + this->iplt_->add_ifunc_entry(gsym); } else { if (this->plt_ == NULL) this->make_plt_section(layout); - if (this->plt_->add_entry(gsym)) - this->glink_->add_entry(object, gsym, reloc); + this->plt_->add_entry(gsym); } + this->glink_->add_entry(object, gsym, reloc); } // Make a PLT entry for a local STT_GNU_IFUNC symbol. @@ -2454,8 +2447,8 @@ Target_powerpc<size, big_endian>::make_local_ifunc_plt_entry( if (this->iplt_ == NULL) this->make_iplt_section(layout); unsigned int r_sym = elfcpp::elf_r_sym<size>(reloc.get_r_info()); - if (this->iplt_->add_local_ifunc_entry(relobj, r_sym)) - this->glink_->add_entry(relobj, r_sym, reloc); + this->iplt_->add_local_ifunc_entry(relobj, r_sym); + this->glink_->add_entry(relobj, r_sym, reloc); } // Return the number of entries in the PLT. |