[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

r5796 - in glibc-package/branches/eglibc-2.18/debian: . patches patches/arm



Author: adconrad
Date: 2013-11-29 03:53:55 +0000 (Fri, 29 Nov 2013)
New Revision: 5796

Added:
   glibc-package/branches/eglibc-2.18/debian/patches/arm/cvs-ifunc-hwcap-fix.diff
Modified:
   glibc-package/branches/eglibc-2.18/debian/changelog
   glibc-package/branches/eglibc-2.18/debian/patches/series
Log:
debian/patches/arm/cvs-ifunc-hwcap-fix.diff: Fix IFUNC on non-NEON.

Modified: glibc-package/branches/eglibc-2.18/debian/changelog
===================================================================
--- glibc-package/branches/eglibc-2.18/debian/changelog	2013-11-28 12:29:58 UTC (rev 5795)
+++ glibc-package/branches/eglibc-2.18/debian/changelog	2013-11-29 03:53:55 UTC (rev 5796)
@@ -65,6 +65,7 @@
   * debian/libc6.symbols.ppc64: Add missing libc6 symbols file for ppc64.
   * debian/libc6.symbols.arm64: Add missing libc6 symbols file for arm64.
   * debian/sysdeps/*: Enable new IFUNC support on armel and armhf builds.
+  * debian/patches/arm/cvs-ifunc-hwcap-fix.diff: Fix IFUNC on non-NEON.
   * debian/patches/any/cvs-tst-cleanup2-ret.diff: Fix return regression
     on recent versions of gcc in nptl/tst-cleanup2 and nptl/tst-cleanupx2.
   * debian/patches/any/unsubmitted-tst-tlsmod-as-needed.diff: Fix linking

Added: glibc-package/branches/eglibc-2.18/debian/patches/arm/cvs-ifunc-hwcap-fix.diff
===================================================================
--- glibc-package/branches/eglibc-2.18/debian/patches/arm/cvs-ifunc-hwcap-fix.diff	                        (rev 0)
+++ glibc-package/branches/eglibc-2.18/debian/patches/arm/cvs-ifunc-hwcap-fix.diff	2013-11-29 03:53:55 UTC (rev 5796)
@@ -0,0 +1,22 @@
+commit d0721e703d222c01a9e8c329311c4fb01dac6972
+Author: Carlos O'Donell <carlos@redhat.com>
+Date:   Thu Aug 29 00:17:33 2013 -0400
+
+    ARM: Pass dl_hwcap to IFUNC resolver.
+    
+    For REL relocs pass dl_hwcap to the IFUNC resolver
+    as is required by the IFUNC API (bug 15905).
+
+diff --git a/ports/sysdeps/arm/dl-machine.h b/ports/sysdeps/arm/dl-machine.h
+index d251527..85dba67 100644
+--- a/ports/sysdeps/arm/dl-machine.h
++++ b/ports/sysdeps/arm/dl-machine.h
+@@ -503,7 +503,7 @@ elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc,
+ 	  break;
+ 	case R_ARM_IRELATIVE:
+ 	  value = map->l_addr + *reloc_addr;
+-	  value = ((Elf32_Addr (*) (void)) value) ();
++	  value = ((Elf32_Addr (*) (int)) value) (GLRO(dl_hwcap));
+ 	  *reloc_addr = value;
+ 	  break;
+ #endif

Modified: glibc-package/branches/eglibc-2.18/debian/patches/series
===================================================================
--- glibc-package/branches/eglibc-2.18/debian/patches/series	2013-11-28 12:29:58 UTC (rev 5795)
+++ glibc-package/branches/eglibc-2.18/debian/patches/series	2013-11-29 03:53:55 UTC (rev 5796)
@@ -54,6 +54,7 @@
 arm/local-soname-hack.diff
 arm/local-vfp-sysdeps.diff
 arm/unsubmitted-ldso-multilib.diff
+arm/cvs-ifunc-hwcap-fix.diff
 
 hppa/local-inlining.diff
 hppa/submitted-fadvise64_64.diff


Reply to: