summaryrefslogtreecommitdiffstats
path: root/binutils-2.20.51.0.10-ppc64-pie.patch
diff options
context:
space:
mode:
Diffstat (limited to 'binutils-2.20.51.0.10-ppc64-pie.patch')
-rw-r--r--binutils-2.20.51.0.10-ppc64-pie.patch30
1 files changed, 10 insertions, 20 deletions
diff --git a/binutils-2.20.51.0.10-ppc64-pie.patch b/binutils-2.20.51.0.10-ppc64-pie.patch
index f68b329..8862d18 100644
--- a/binutils-2.20.51.0.10-ppc64-pie.patch
+++ b/binutils-2.20.51.0.10-ppc64-pie.patch
@@ -1,24 +1,14 @@
-*** ../binutils-2.20.51.0.10.original/bfd/elf64-ppc.c 2010-08-10 14:58:09.000000000 +0100
---- bfd/elf64-ppc.c 2010-08-10 15:03:16.000000000 +0100
+*** ../binutils-2.23.51.0.2.orig/bfd/elf64-ppc.c 2012-09-11 12:13:00.637448573 +0100
+--- bfd/elf64-ppc.c 2012-09-11 12:13:17.922449052 +0100
*************** ppc64_elf_relocate_section (bfd *output_
-*** 12757,12763 ****
- else if (!SYMBOL_CALLS_LOCAL (info, &h->elf)
- && !is_opd
- && r_type != R_PPC64_TOC)
-! outrel.r_info = ELF64_R_INFO (h->elf.dynindx, r_type);
- else
+*** 13523,13528 ****
+--- 13523,13531 ----
{
- /* This symbol is local, or marked to become local,
---- 12757,12768 ----
- else if (!SYMBOL_CALLS_LOCAL (info, &h->elf)
- && !is_opd
- && r_type != R_PPC64_TOC)
-! {
-! outrel.r_info = ELF64_R_INFO (h->elf.dynindx, r_type);
-! if (h->elf.dynindx == -1
-! && h->elf.root.type == bfd_link_hash_undefweak)
-! memset (&outrel, 0, sizeof outrel);
-! }
+ BFD_ASSERT (h->elf.dynindx != -1);
+ outrel.r_info = ELF64_R_INFO (h->elf.dynindx, r_type);
++ if (h->elf.dynindx == -1
++ && h->elf.root.type == bfd_link_hash_undefweak)
++ memset (&outrel, 0, sizeof outrel);
+ }
else
{
- /* This symbol is local, or marked to become local,