summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2014-11-14 18:53:07 +0000
committerJoseph Myers <joseph@codesourcery.com>2014-11-14 18:53:07 +0000
commit5ae4fe60e68a6698afadbec00481be96096e3eb4 (patch)
tree0d1d4f1b6282fe740aa129fcbb67b56489037e16
parent6a0dd472f407fd2fedd7bdf744a5d9fa87b124af (diff)
downloadglibc-5ae4fe60e68a6698afadbec00481be96096e3eb4.tar.gz
glibc-5ae4fe60e68a6698afadbec00481be96096e3eb4.tar.xz
glibc-5ae4fe60e68a6698afadbec00481be96096e3eb4.zip
Remove x86_64 __GNUC_PREREQ (4, 6) conditional.
This patch removes a conditional on __GNUC_PREREQ (4, 6) in x86_64
code.

Tested for x86_64 that installed shared libraries are unchanged by
this patch.  Committed (I think this file reasonably comes under math
maintainership).

	* sysdeps/x86_64/fpu/dla.h [__FMA4__ && __GNUC_PREREQ (4, 6)]
	(DLA_FMS): Make definition conditional only on [__FMA4__].
	[__FMA4__ && !__GNUC_PREREQ (4, 6)] (DLA_FMS): Remove conditional
	definition.
-rw-r--r--ChangeLog5
-rw-r--r--sysdeps/x86_64/fpu/dla.h11
2 files changed, 6 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index f84b92e940..c8bf7838a4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2014-11-14  Joseph Myers  <joseph@codesourcery.com>
 
+	* sysdeps/x86_64/fpu/dla.h [__FMA4__ && __GNUC_PREREQ (4, 6)]
+	(DLA_FMS): Make definition conditional only on [__FMA4__].
+	[__FMA4__ && !__GNUC_PREREQ (4, 6)] (DLA_FMS): Remove conditional
+	definition.
+
 	* sysdeps/arm/sysdep.h [PROF && __GNUC_PREREQ(4,4)] (CALL_MCOUNT):
 	Make definition conditional only on [PROF].
 	[PROF && !__GNUC_PREREQ(4,4)] (CALL_MCOUNT): Remove conditional
diff --git a/sysdeps/x86_64/fpu/dla.h b/sysdeps/x86_64/fpu/dla.h
index fa2d52bbf0..688efa0f5b 100644
--- a/sysdeps/x86_64/fpu/dla.h
+++ b/sysdeps/x86_64/fpu/dla.h
@@ -1,17 +1,8 @@
 #include <features.h>
 
 #ifdef __FMA4__
-# if __GNUC_PREREQ (4, 6)
-#  define DLA_FMS(x,y,z) \
+# define DLA_FMS(x,y,z) \
   __builtin_fma (x, y, -(z))
-# else
-#  define DLA_FMS(x,y,z) \
-  ({ double __z;							      \
-     asm ("vfmsubsd %3, %2, %1, %0"					      \
-	  : "=x" (__z)							      \
-	  : "x" ((double) (x)), "xm" ((double) (y)) , "x" ((double) (z)));    \
-    __z; })
-# endif
 #endif
 
 #include "sysdeps/ieee754/dbl-64/dla.h"