diff options
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/elf64-mips.c | 2 | ||||
-rw-r--r-- | bfd/elfxx-mips.c | 3 |
3 files changed, 9 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index a3daca5..efa6cb7 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,11 @@ 2012-05-19 Maciej W. Rozycki <macro@linux-mips.org> + * elf64-mips.c (elf_backend_got_header_size): Correct definition. + * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Use the ELF + backend's GOT header size instead of hardcoding it. + +2012-05-19 Maciej W. Rozycki <macro@linux-mips.org> + * elf32-vax.c (elf_vax_relocate_section) <R_VAX_8, R_VAX_16, R_VAX_32>: Don't check if info->shared again. diff --git a/bfd/elf64-mips.c b/bfd/elf64-mips.c index 054b262..e02f969 100644 --- a/bfd/elf64-mips.c +++ b/bfd/elf64-mips.c @@ -4126,7 +4126,7 @@ const struct elf_size_info mips_elf64_size_info = #define elf_backend_grok_prstatus elf64_mips_grok_prstatus #define elf_backend_grok_psinfo elf64_mips_grok_psinfo -#define elf_backend_got_header_size (4 * MIPS_RESERVED_GOTNO) +#define elf_backend_got_header_size (8 * MIPS_RESERVED_GOTNO) /* MIPS ELF64 can use a mixture of REL and RELA, but some Relocations work better/work only in RELA, so we default to this. */ diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c index 6dd0592..9b4ccbf 100644 --- a/bfd/elfxx-mips.c +++ b/bfd/elfxx-mips.c @@ -8665,7 +8665,8 @@ _bfd_mips_elf_adjust_dynamic_symbol (struct bfd_link_info *info, /* On non-VxWorks targets, the first two entries in .got.plt are reserved. */ if (!htab->is_vxworks) - htab->sgotplt->size += 2 * MIPS_ELF_GOT_SIZE (dynobj); + htab->sgotplt->size + += get_elf_backend_data (dynobj)->got_header_size; /* On VxWorks, also allocate room for the header's .rela.plt.unloaded entries. */ |