patches/binutils/2.22/400-fix_arm_gc_sections.patch
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Wed Dec 05 20:31:43 2012 +0100 (2012-12-05)
changeset 3134 863723936e24
permissions -rw-r--r--
scripts/xldd: use user's sed and grep

xldd uses sed and grep as detected by ./configure. This works well if is
used on the machine that build the toolchain.

But if the user moves the toolchain to another machine where sed and grep
are not in the same directory (eg. /bin/sed vs. /usr/bin/sed), then xldd
will stop functionning.

Fix that by using ${SED} and ${GREP} if they are set in the environment.

Reported-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
f@3051
     1
--- a/bfd/elf32-arm.c
f@3051
     2
+++ b/bfd/elf32-arm.c
f@3051
     3
@@ -12408,7 +12408,8 @@ elf32_arm_check_relocs (bfd *abfd, struc
f@3051
     4
 
f@3051
     5
 	  /* If the symbol is a function that doesn't bind locally,
f@3051
     6
 	     this relocation will need a PLT entry.  */
f@3051
     7
-	  root_plt->refcount += 1;
f@3051
     8
+	  if (root_plt->refcount != -1)
f@3051
     9
+	    root_plt->refcount += 1;
f@3051
    10
 
f@3051
    11
 	  if (!call_reloc_p)
f@3051
    12
 	    arm_plt->noncall_refcount++;