diff options
author | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2017-07-29 15:09:06 +0200 |
---|---|---|
committer | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2017-08-01 23:38:05 +0200 |
commit | 0b5dc3192306409113adbb0dfbcaa62bbcdf4fb4 (patch) | |
tree | cd22aacf2497504131520e793bdcd049e673ec28 /package/binutils/2.26.1/0900-Correct-nios2-_gp-address-computation.patch | |
parent | ab2e1786c2c5b8ef377563ca9bc3f7dbabe2cb61 (diff) | |
download | buildroot-0b5dc3192306409113adbb0dfbcaa62bbcdf4fb4.tar.gz buildroot-0b5dc3192306409113adbb0dfbcaa62bbcdf4fb4.zip |
binutils: remove support for 2.26
Now that binutils 2.29 has been introduced, and we have moved to
2.28.1 as the default version, it is time to drop support for binutils
2.26.x.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'package/binutils/2.26.1/0900-Correct-nios2-_gp-address-computation.patch')
-rw-r--r-- | package/binutils/2.26.1/0900-Correct-nios2-_gp-address-computation.patch | 108 |
1 files changed, 0 insertions, 108 deletions
diff --git a/package/binutils/2.26.1/0900-Correct-nios2-_gp-address-computation.patch b/package/binutils/2.26.1/0900-Correct-nios2-_gp-address-computation.patch deleted file mode 100644 index 81986f51b9..0000000000 --- a/package/binutils/2.26.1/0900-Correct-nios2-_gp-address-computation.patch +++ /dev/null @@ -1,108 +0,0 @@ -From 5eeb7401eed2f26d5fc255de816ca70a2cb9374e Mon Sep 17 00:00:00 2001 -From: Sandra Loosemore <sandra@codesourcery.com> -Date: Sun, 27 Dec 2015 12:30:26 -0800 -Subject: [PATCH 900/901] Correct nios2 _gp address computation. - -2015-12-27 Sandra Loosemore <sandra@codesourcery.com> - - bfd/ - * elf32-nios2.c (nios2_elf_assign_gp): Correct computation of _gp - address. - (nios2_elf32_relocate_section): Tidy code for R_NIOS2_GPREL error - messages. - -[Romain: - - backport upstream patch on 2.26 - - drop bfd/ChangeLog entry] -Signed-off-by: Romain Naour <romain.naour@gmail.com> ---- - bfd/elf32-nios2.c | 31 +++++++++++++++++++++---------- - 1 file changed, 21 insertions(+), 10 deletions(-) - -diff --git a/bfd/elf32-nios2.c b/bfd/elf32-nios2.c -index 6b29d8b..01ebd6e 100644 ---- a/bfd/elf32-nios2.c -+++ b/bfd/elf32-nios2.c -@@ -3086,7 +3086,15 @@ lookup: - case bfd_link_hash_defined: - case bfd_link_hash_defweak: - gp_found = TRUE; -- *pgp = lh->u.def.value; -+ { -+ asection *sym_sec = lh->u.def.section; -+ bfd_vma sym_value = lh->u.def.value; -+ -+ if (sym_sec->output_section) -+ sym_value = (sym_value + sym_sec->output_offset -+ + sym_sec->output_section->vma); -+ *pgp = sym_value; -+ } - break; - case bfd_link_hash_indirect: - case bfd_link_hash_warning: -@@ -3719,7 +3727,6 @@ nios2_elf32_relocate_section (bfd *output_bfd, - struct elf32_nios2_link_hash_entry *eh; - bfd_vma relocation; - bfd_vma gp; -- bfd_vma reloc_address; - bfd_reloc_status_type r = bfd_reloc_ok; - const char *name = NULL; - int r_type; -@@ -3762,12 +3769,6 @@ nios2_elf32_relocate_section (bfd *output_bfd, - if (bfd_link_relocatable (info)) - continue; - -- if (sec && sec->output_section) -- reloc_address = (sec->output_section->vma + sec->output_offset -- + rel->r_offset); -- else -- reloc_address = 0; -- - if (howto) - { - switch (howto->type) -@@ -3816,6 +3817,15 @@ nios2_elf32_relocate_section (bfd *output_bfd, - /* Turns an absolute address into a gp-relative address. */ - if (!nios2_elf_assign_gp (output_bfd, &gp, info)) - { -+ bfd_vma reloc_address; -+ -+ if (sec && sec->output_section) -+ reloc_address = (sec->output_section->vma -+ + sec->output_offset -+ + rel->r_offset); -+ else -+ reloc_address = 0; -+ - format = _("global pointer relative relocation at address " - "0x%08x when _gp not defined\n"); - sprintf (msgbuf, format, reloc_address); -@@ -3825,7 +3835,7 @@ nios2_elf32_relocate_section (bfd *output_bfd, - else - { - bfd_vma symbol_address = rel->r_addend + relocation; -- relocation = relocation + rel->r_addend - gp; -+ relocation = symbol_address - gp; - rel->r_addend = 0; - if (((signed) relocation < -32768 - || (signed) relocation > 32767) -@@ -3833,6 +3843,8 @@ nios2_elf32_relocate_section (bfd *output_bfd, - || h->root.type == bfd_link_hash_defined - || h->root.type == bfd_link_hash_defweak)) - { -+ if (h) -+ name = h->root.root.string; - format = _("Unable to reach %s (at 0x%08x) from the " - "global pointer (at 0x%08x) because the " - "offset (%d) is out of the allowed range, " -@@ -3848,7 +3860,6 @@ nios2_elf32_relocate_section (bfd *output_bfd, - rel->r_offset, relocation, - rel->r_addend); - } -- - break; - case R_NIOS2_UJMP: - r = nios2_elf32_do_ujmp_relocate (input_bfd, howto, --- -2.4.3 - |