diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2012-10-25 13:36:08 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2012-10-25 13:36:08 +0000 |
commit | 9d4b2dba0e5f61cbec871f70e0a20c4b8a5d4ba9 (patch) | |
tree | c8bd2db077066764b8a7b874870022183fc650f8 | |
parent | 528b42ae75c9f19f1bca1e109a7de13d89ba11b2 (diff) | |
download | gdb-9d4b2dba0e5f61cbec871f70e0a20c4b8a5d4ba9.zip gdb-9d4b2dba0e5f61cbec871f70e0a20c4b8a5d4ba9.tar.gz gdb-9d4b2dba0e5f61cbec871f70e0a20c4b8a5d4ba9.tar.bz2 |
Replace _GLOBAL_OFFSET_TABLE_ lookup with htab->elf.hgot
* elf32-i386.c (elf_i386_size_dynamic_sections): Replace
_GLOBAL_OFFSET_TABLE_ lookup with htab->elf.hgot.
* elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Likewise.
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/elf32-i386.c | 9 | ||||
-rw-r--r-- | bfd/elf64-x86-64.c | 9 |
3 files changed, 10 insertions, 14 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 6125ab5..c5e0390 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2012-10-25 H.J. Lu <hongjiu.lu@intel.com> + + * elf32-i386.c (elf_i386_size_dynamic_sections): Replace + _GLOBAL_OFFSET_TABLE_ lookup with htab->elf.hgot. + * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Likewise. + 2012-10-24 H.J. Lu <hongjiu.lu@intel.com> * compress.c (bfd_is_section_compressed): Don't decompress the diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c index eb90a91..1b04a6e 100644 --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -2863,15 +2863,10 @@ elf_i386_size_dynamic_sections (bfd *output_bfd, struct bfd_link_info *info) if (htab->elf.sgotplt) { - struct elf_link_hash_entry *got; - got = elf_link_hash_lookup (elf_hash_table (info), - "_GLOBAL_OFFSET_TABLE_", - FALSE, FALSE, FALSE); - /* Don't allocate .got.plt section if there are no GOT nor PLT entries and there is no reference to _GLOBAL_OFFSET_TABLE_. */ - if ((got == NULL - || !got->ref_regular_nonweak) + if ((htab->elf.hgot == NULL + || !htab->elf.hgot->ref_regular_nonweak) && (htab->elf.sgotplt->size == get_elf_backend_data (output_bfd)->got_header_size) && (htab->elf.splt == NULL diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c index a440647..ca9a45c 100644 --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -2917,15 +2917,10 @@ elf_x86_64_size_dynamic_sections (bfd *output_bfd, if (htab->elf.sgotplt) { - struct elf_link_hash_entry *got; - got = elf_link_hash_lookup (elf_hash_table (info), - "_GLOBAL_OFFSET_TABLE_", - FALSE, FALSE, FALSE); - /* Don't allocate .got.plt section if there are no GOT nor PLT entries and there is no refeence to _GLOBAL_OFFSET_TABLE_. */ - if ((got == NULL - || !got->ref_regular_nonweak) + if ((htab->elf.hgot == NULL + || !htab->elf.hgot->ref_regular_nonweak) && (htab->elf.sgotplt->size == get_elf_backend_data (output_bfd)->got_header_size) && (htab->elf.splt == NULL |