diff options
author | Alan Modra <amodra@gmail.com> | 2012-08-14 03:39:03 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2012-08-14 03:39:03 +0000 |
commit | 921b53228fa18e00beca6b19b3aa43c23903b900 (patch) | |
tree | 58e756620d247965ed65e394bd8d40aae46253f4 /gold/powerpc.cc | |
parent | a6f7924a8348ef6344ea114278fb2befcd3118e1 (diff) | |
download | gdb-921b53228fa18e00beca6b19b3aa43c23903b900.zip gdb-921b53228fa18e00beca6b19b3aa43c23903b900.tar.gz gdb-921b53228fa18e00beca6b19b3aa43c23903b900.tar.bz2 |
* target.h (Target::output_section_name): New function.
(Target::do_output_section_name): New function.
* layout.cc (Layout::choose_output_section): Call the above.
* powerpc.cc (Target_powerpc::do_output_section_name): New function.
Diffstat (limited to 'gold/powerpc.cc')
-rw-r--r-- | gold/powerpc.cc | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/gold/powerpc.cc b/gold/powerpc.cc index 3c84fd6..35cf834 100644 --- a/gold/powerpc.cc +++ b/gold/powerpc.cc @@ -125,6 +125,19 @@ class Target_powerpc : public Sized_target<size, big_endian> bool needs_special_offset_handling, size_t local_symbol_count, const unsigned char* plocal_symbols); + + // Map input .toc section to output .got section. + const char* + do_output_section_name(const Relobj*, const char* name, size_t* plen) const + { + if (size == 64 && strcmp(name, ".toc") == 0) + { + *plen = 4; + return ".got"; + } + return NULL; + } + // Finalize the sections. void do_finalize_sections(Layout*, const Input_objects*, Symbol_table*); |