ports/devel/binutils/files/patch-bfd_elfxx-sparc.c
Baptiste Daroussin 1bf999a060 Integrate a sparc64 patch from base version of binutils
Submitted by:	marius
2014-10-10 14:38:39 +00:00

26 lines
851 B
C

--- bfd/elfxx-sparc.c.orig 2013-11-08 11:13:48.000000000 +0100
+++ bfd/elfxx-sparc.c 2014-10-10 16:30:23.316125000 +0200
@@ -2942,12 +2942,14 @@
Elf_Internal_Rela *relend;
int num_relocs;
bfd_boolean is_vxworks_tls;
+ const struct elf_backend_data *bed;
htab = _bfd_sparc_elf_hash_table (info);
BFD_ASSERT (htab != NULL);
symtab_hdr = &elf_symtab_hdr (input_bfd);
sym_hashes = elf_sym_hashes (input_bfd);
local_got_offsets = elf_local_got_offsets (input_bfd);
+ bed = get_elf_backend_data (output_bfd);
if (elf_hash_table (info)->hgot == NULL)
got_base = 0;
@@ -3528,6 +3530,8 @@
bfd_set_error (bfd_error_bad_value);
return FALSE;
}
+ if (bed->elf_osabi == ELFOSABI_FREEBSD)
+ outrel.r_addend -= osec->vma;
}
outrel.r_info = SPARC_ELF_R_INFO (htab, rel, indx,