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

[glibc] 02/02: debian/patches/powerpc/submitted-powerpc-ifunc-sel.diff: new patch to fix the ifunc tests with GCC 6 on PowerPC.



This is an automated email from the git hooks/post-receive script.

aurel32 pushed a commit to branch glibc-2.24
in repository glibc.

commit 5d561c28e1c59c48c4550340d44a21008fe91390
Author: Aurelien Jarno <aurelien@aurel32.net>
Date:   Mon Jul 25 23:37:05 2016 +0200

    debian/patches/powerpc/submitted-powerpc-ifunc-sel.diff: new patch to fix the ifunc tests with GCC 6 on PowerPC.
---
 debian/changelog                                   |  2 +
 .../powerpc/submitted-powerpc-ifunc-sel.diff       | 43 ++++++++++++++++++++++
 debian/patches/series                              |  1 +
 3 files changed, 46 insertions(+)

diff --git a/debian/changelog b/debian/changelog
index 1058fbb..6a5db78 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,6 +3,8 @@ glibc (2.23.90+20160719.2c3d888-2) UNRELEASED; urgency=medium
   [ Aurelien Jarno ]
   * debian/testsuite-xfail-debian.mk: remove HPPA math tests from XFAIL,
     the problem is fixed from some time already.
+  * debian/patches/powerpc/submitted-powerpc-ifunc-sel.diff: new patch to
+    fix the ifunc tests with GCC 6 on PowerPC.
 
  -- Aurelien Jarno <aurel32@debian.org>  Wed, 20 Jul 2016 10:24:15 +0200
 
diff --git a/debian/patches/powerpc/submitted-powerpc-ifunc-sel.diff b/debian/patches/powerpc/submitted-powerpc-ifunc-sel.diff
new file mode 100644
index 0000000..98a7ac9
--- /dev/null
+++ b/debian/patches/powerpc/submitted-powerpc-ifunc-sel.diff
@@ -0,0 +1,43 @@
+2016-07-21  Aurelien Jarno  <aurelien@aurel32.net>
+
+	* sysdeps/powerpc/ifunc-sel.h (ifunc_sel): Replace beqlr instructions
+	by beq instructions jumping to the end of the function.
+	* sysdeps/powerpc/ifunc-sel.h (ifunc_sel): Add "11", "12", "cr0" to the
+	clobber list. Use "i" constraint instead of "X".
+	(ifunc_one): Add "12" to the clobber list. Use "i" constraint instead
+	of "X".
+
+--- a/sysdeps/powerpc/ifunc-sel.h
++++ b/sysdeps/powerpc/ifunc-sel.h
+@@ -17,15 +17,17 @@ ifunc_sel (int (*f1) (void), int (*f2) (void), int (*f3) (void))
+ 	   "addis %0,11,%2-1b@ha\n\t"
+ 	   "addi %0,%0,%2-1b@l\n\t"
+ 	   "cmpwi 12,1\n\t"
+-	   "beqlr\n\t"
++	   "beq 2f\n\t"
+ 	   "addis %0,11,%3-1b@ha\n\t"
+ 	   "addi %0,%0,%3-1b@l\n\t"
+ 	   "cmpwi 12,-1\n\t"
+-	   "beqlr\n\t"
++	   "beq 2f\n\t"
+ 	   "addis %0,11,%4-1b@ha\n\t"
+-	   "addi %0,%0,%4-1b@l"
++	   "addi %0,%0,%4-1b@l\n\t"
++	   "2:"
+ 	   : "=r" (ret)
+-	   : "X" (&global), "X" (f1), "X" (f2), "X" (f3));
++	   : "i" (&global), "i" (f1), "i" (f2), "i" (f3)
++	   : "11", "12", "cr0");
+   return ret;
+ }
+ 
+@@ -40,7 +42,8 @@ ifunc_one (int (*f1) (void))
+ 	   "addis %0,%0,%1-1b@ha\n\t"
+ 	   "addi %0,%0,%1-1b@l"
+ 	   : "=r" (ret)
+-	   : "X" (f1));
++	   : "i" (f1)
++	   : "12");
+   return ret;
+ }
+ #endif
diff --git a/debian/patches/series b/debian/patches/series
index ad42d43..32452d6 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -160,6 +160,7 @@ m68k/submitted-gcc34-seccomment.diff
 mips/submitted-rld_map.diff
 
 powerpc/local-powerpc8xx-dcbz.diff
+powerpc/submitted-powerpc-ifunc-sel.diff
 
 sh4/local-fpscr_values.diff
 

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-glibc/glibc.git


Reply to: