]> git.ipfire.org Git - ipfire-3.x.git/commitdiff
binutils: Fix assert error in ld.
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 29 Jun 2012 15:51:52 +0000 (17:51 +0200)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 29 Jun 2012 15:51:52 +0000 (17:51 +0200)
http://sourceware.org/bugzilla/show_bug.cgi?id=14189

Fixes #10073.

binutils/binutils.nm
binutils/patches/binutils-2.22.52.0.4-refcount.patch0 [new file with mode: 0644]

index e03ac50b7eb8aa0bd9889f111c3ceff57ee20d31..b5c2c48c2671fdd99828f7f3869295c50a13218b 100644 (file)
@@ -5,7 +5,7 @@
 
 name       = binutils
 version    = 2.22.52.0.4
-release    = 1
+release    = 2
 
 maintainer = Michael Tremer <michael.tremer@ipfire.org>
 groups     = Development/Tools
diff --git a/binutils/patches/binutils-2.22.52.0.4-refcount.patch0 b/binutils/patches/binutils-2.22.52.0.4-refcount.patch0
new file mode 100644 (file)
index 0000000..33fcfd4
--- /dev/null
@@ -0,0 +1,19 @@
+http://sourceware.org/bugzilla/show_bug.cgi?id=14189
+
+Index: bfd/elf32-arm.c
+===================================================================
+RCS file: /cvs/src/src/bfd/elf32-arm.c,v
+retrieving revision 1.294
+diff -u -3 -p -r1.294 elf32-arm.c
+--- bfd/elf32-arm.c    28 Jun 2012 16:57:24 -0000      1.294
++++ bfd/elf32-arm.c    29 Jun 2012 13:21:52 -0000
+@@ -12668,7 +12668,8 @@ elf32_arm_check_relocs (bfd *abfd, struc
+         /* If the symbol is a function that doesn't bind locally,
+            this relocation will need a PLT entry.  */
+-        root_plt->refcount += 1;
++        if (root_plt->refcount != -1)
++          root_plt->refcount += 1;
+         if (!call_reloc_p)
+           arm_plt->noncall_refcount++;