This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch, master, updated. glibc-2.14-439-g202c9de


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  202c9deb15ee43bcbe70b36fa9bae050b8633c27 (commit)
      from  485683c35f020bd8b926e9673adb9b748380e8ce (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=202c9deb15ee43bcbe70b36fa9bae050b8633c27

commit 202c9deb15ee43bcbe70b36fa9bae050b8633c27
Author: Ulrich Drepper <drepper@gmail.com>
Date:   Mon Oct 24 22:11:21 2011 -0400

    Better DLA_FMS
    
    It's better to use __builtin_fma if it works.  Use it for gcc 4.6 and
    higher.  Move the x86-64 dla.h to the correct place.

diff --git a/ChangeLog b/ChangeLog
index 108d9a9..992ad4c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,9 @@
 2011-10-24  Ulrich Drepper  <drepper@gmail.com>
 
-	* sysdeps/x86_64/dla.h (DLA_FMS): Some compilers fail to inline
-	__builtin_fma in some situations.  Have to use an asm.
+	* sysdeps/x86_64/dla.h: Move to ...
+	* sysdeps/x86_64/fpu/dla.h: ...here.
+	(DLA_FMS): Some compilers fail to inline __builtin_fma in some
+	situations.  Use __builtin_fma only for gcc 4.6 and up.
 
 	* config.make.in: Add have-mfma4 entry.
 	* configure.in: Substitute libc_cv_cc_fma4.
diff --git a/sysdeps/x86_64/dla.h b/sysdeps/x86_64/fpu/dla.h
similarity index 63%
rename from sysdeps/x86_64/dla.h
rename to sysdeps/x86_64/fpu/dla.h
index 6fe8f74..fa2d52b 100644
--- a/sysdeps/x86_64/dla.h
+++ b/sysdeps/x86_64/fpu/dla.h
@@ -1,10 +1,17 @@
+#include <features.h>
+
 #ifdef __FMA4__
-# define DLA_FMS(x,y,z) \
+# if __GNUC_PREREQ (4, 6)
+#  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"

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                      |    6 ++++--
 sysdeps/x86_64/{ => fpu}/dla.h |    9 ++++++++-
 2 files changed, 12 insertions(+), 3 deletions(-)
 rename sysdeps/x86_64/{ => fpu}/dla.h (63%)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]