diff options
Diffstat (limited to 'meta/recipes-devtools/binutils/binutils/fix-pr16428a.patch')
-rw-r--r-- | meta/recipes-devtools/binutils/binutils/fix-pr16428a.patch | 75 |
1 files changed, 0 insertions, 75 deletions
diff --git a/meta/recipes-devtools/binutils/binutils/fix-pr16428a.patch b/meta/recipes-devtools/binutils/binutils/fix-pr16428a.patch deleted file mode 100644 index 5b3edfbd03..0000000000 --- a/meta/recipes-devtools/binutils/binutils/fix-pr16428a.patch +++ /dev/null @@ -1,75 +0,0 @@ -From d1ec1e40b5b457c92aaa23f7af40e026e4596a99 Mon Sep 17 00:00:00 2001 -From: H.J. Lu <hjl.tools@gmail.com> -Date: Tue, 14 Jan 2014 10:48:39 -0800 -Subject: [PATCH 1/1] Don't update reloc count if there are any non pc-relative relocs - - PR ld/16428 - * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't update reloc - count if there are any non pc-relative relocs. - * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise. ---- - bfd/ChangeLog | 7 +++++++ - bfd/elf32-i386.c | 9 +++++++-- - bfd/elf64-x86-64.c | 9 +++++++-- - 3 files changed, 21 insertions(+), 4 deletions(-) - -Upstream-Status: Backport - -#diff --git a/bfd/ChangeLog b/bfd/ChangeLog -#index a8f1f94..7a49fd1 100644 -#--- a/bfd/ChangeLog -#+++ b/bfd/ChangeLog -#@@ -1,3 +1,10 @@ -#+2014-01-14 H.J. Lu <hongjiu.lu@intel.com> -#+ -#+ PR ld/16428 -#+ * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't update reloc -#+ count if there are any non pc-relative relocs. -#+ * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise. -#+ -# 2014-01-14 Michael Hudson-Doyle <michael.hudson@linaro.org> -# Kugan Vivekanandarajah <kugan.vivekanandarajah@linaro.org> -# -diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c -index 4d391e1..d7f59e5 100644 ---- a/bfd/elf32-i386.c -+++ b/bfd/elf32-i386.c -@@ -2368,8 +2368,13 @@ elf_i386_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) - - for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) - { -- p->count -= p->pc_count; -- p->pc_count = 0; -+ /* Don't update reloc count if there are any non -+ pc-relative relocs. */ -+ if (!h->pointer_equality_needed) -+ { -+ p->count -= p->pc_count; -+ p->pc_count = 0; -+ } - if (p->count == 0) - *pp = p->next; - else -diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c -index edee8ec..999011b 100644 ---- a/bfd/elf64-x86-64.c -+++ b/bfd/elf64-x86-64.c -@@ -2463,8 +2463,13 @@ elf_x86_64_allocate_dynrelocs (struct elf_link_hash_entry *h, void * inf) - - for (pp = &eh->dyn_relocs; (p = *pp) != NULL; ) - { -- p->count -= p->pc_count; -- p->pc_count = 0; -+ /* Don't update reloc count if there are any non -+ pc-relative relocs. */ -+ if (!h->pointer_equality_needed) -+ { -+ p->count -= p->pc_count; -+ p->pc_count = 0; -+ } - if (p->count == 0) - *pp = p->next; - else --- -1.7.1 - |