From c8b3296bbeee2f482354f833f506ac91d142e147 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sun, 23 Oct 2011 12:50:28 -0400 Subject: [PATCH] Clean up last dla.h change --- ChangeLog | 14 ++++++++++++++ sysdeps/ieee754/dbl-64/dla.h | 12 ------------ sysdeps/ieee754/dbl-64/doasin.c | 2 +- sysdeps/ieee754/dbl-64/dosincos.c | 2 +- sysdeps/ieee754/dbl-64/e_atan2.c | 2 +- sysdeps/ieee754/dbl-64/e_log.c | 2 +- sysdeps/ieee754/dbl-64/e_pow.c | 2 +- sysdeps/ieee754/dbl-64/e_sqrt.c | 2 +- sysdeps/ieee754/dbl-64/halfulp.c | 2 +- sysdeps/ieee754/dbl-64/s_atan.c | 2 +- sysdeps/ieee754/dbl-64/s_tan.c | 2 +- sysdeps/x86_64/dla.h | 9 +++++++++ 12 files changed, 32 insertions(+), 21 deletions(-) create mode 100644 sysdeps/x86_64/dla.h diff --git a/ChangeLog b/ChangeLog index b401ec4..5c234d5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,17 @@ +2011-10-23 Ulrich Drepper + + * sysdeps/ieee754/dbl-64/dla.h: Move DLA_FMA definition to... + * sysdeps/x86_64/dla.h: ...here. New file. + * sysdeps/ieee754/dbl-64/doasin.c: Use not "dla.h". + * sysdeps/ieee754/dbl-64/dosincos.c: Likewise. + * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_log.c: Likewise. + * sysdeps/ieee754/dbl-64/e_pow.c: Likewise. + * sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise. + * sysdeps/ieee754/dbl-64/halfulp.c: Likewise. + * sysdeps/ieee754/dbl-64/s_atan.c: Likewise. + * sysdeps/ieee754/dbl-64/s_tan.c: Likewise. + 2011-10-23 Andreas Schwab * sysdeps/ieee754/ldbl-128ibm/e_jnl.c: Add __jnl_finite and diff --git a/sysdeps/ieee754/dbl-64/dla.h b/sysdeps/ieee754/dbl-64/dla.h index 0ca8762..af202ad 100644 --- a/sysdeps/ieee754/dbl-64/dla.h +++ b/sysdeps/ieee754/dbl-64/dla.h @@ -35,18 +35,6 @@ /* IEEE double. */ /***********************************************************************/ -/* We can use fma instructions if available. */ -#if defined __x86_64__ || (defined __i386__ && defined __SSE2_MATH__) -# ifdef __FMA4__ -# define DLA_FMA(x,y,z) \ - ({ double __zz; \ - asm ("vfmsubsd %3, %2, %1, %0" \ - : "=x" (__zz) : "x" (x), "xm" (y), "x" (z)); \ - __zz; }) -# endif -#endif - - /* CN = 1+2**27 = '41a0000002000000' IEEE double format */ #define CN 134217729.0 diff --git a/sysdeps/ieee754/dbl-64/doasin.c b/sysdeps/ieee754/dbl-64/doasin.c index 9ed7609..c21d4b7 100644 --- a/sysdeps/ieee754/dbl-64/doasin.c +++ b/sysdeps/ieee754/dbl-64/doasin.c @@ -31,7 +31,7 @@ #include "endian.h" #include "mydefs.h" -#include "dla.h" +#include #include "math_private.h" /********************************************************************/ diff --git a/sysdeps/ieee754/dbl-64/dosincos.c b/sysdeps/ieee754/dbl-64/dosincos.c index 654f342..4ae88c3 100644 --- a/sysdeps/ieee754/dbl-64/dosincos.c +++ b/sysdeps/ieee754/dbl-64/dosincos.c @@ -36,7 +36,7 @@ #include "endian.h" #include "mydefs.h" #include "sincos.tbl" -#include "dla.h" +#include #include "dosincos.h" #include "math_private.h" diff --git a/sysdeps/ieee754/dbl-64/e_atan2.c b/sysdeps/ieee754/dbl-64/e_atan2.c index 4d8c23a..f8f678b 100644 --- a/sysdeps/ieee754/dbl-64/e_atan2.c +++ b/sysdeps/ieee754/dbl-64/e_atan2.c @@ -37,7 +37,7 @@ /* */ /************************************************************************/ -#include "dla.h" +#include #include "mpa.h" #include "MathLib.h" #include "uatan.tbl" diff --git a/sysdeps/ieee754/dbl-64/e_log.c b/sysdeps/ieee754/dbl-64/e_log.c index c158c8b..1485163 100644 --- a/sysdeps/ieee754/dbl-64/e_log.c +++ b/sysdeps/ieee754/dbl-64/e_log.c @@ -36,7 +36,7 @@ #include "endian.h" -#include "dla.h" +#include #include "mpa.h" #include "MathLib.h" #include "math_private.h" diff --git a/sysdeps/ieee754/dbl-64/e_pow.c b/sysdeps/ieee754/dbl-64/e_pow.c index 643e1cb..7890540 100644 --- a/sysdeps/ieee754/dbl-64/e_pow.c +++ b/sysdeps/ieee754/dbl-64/e_pow.c @@ -37,7 +37,7 @@ /***************************************************************************/ #include "endian.h" #include "upow.h" -#include "dla.h" +#include #include "mydefs.h" #include "MathLib.h" #include "upow.tbl" diff --git a/sysdeps/ieee754/dbl-64/e_sqrt.c b/sysdeps/ieee754/dbl-64/e_sqrt.c index 05d1e71..c507c59 100644 --- a/sysdeps/ieee754/dbl-64/e_sqrt.c +++ b/sysdeps/ieee754/dbl-64/e_sqrt.c @@ -35,7 +35,7 @@ #include "endian.h" #include "mydefs.h" -#include "dla.h" +#include #include "MathLib.h" #include "root.tbl" #include "math_private.h" diff --git a/sysdeps/ieee754/dbl-64/halfulp.c b/sysdeps/ieee754/dbl-64/halfulp.c index 5d27334..373d405 100644 --- a/sysdeps/ieee754/dbl-64/halfulp.c +++ b/sysdeps/ieee754/dbl-64/halfulp.c @@ -37,7 +37,7 @@ #include "endian.h" #include "mydefs.h" -#include "dla.h" +#include #include "math_private.h" static const int4 tab54[32] = { diff --git a/sysdeps/ieee754/dbl-64/s_atan.c b/sysdeps/ieee754/dbl-64/s_atan.c index b948f50..5ea8326 100644 --- a/sysdeps/ieee754/dbl-64/s_atan.c +++ b/sysdeps/ieee754/dbl-64/s_atan.c @@ -37,7 +37,7 @@ /* */ /************************************************************************/ -#include "dla.h" +#include #include "mpa.h" #include "MathLib.h" #include "uatan.tbl" diff --git a/sysdeps/ieee754/dbl-64/s_tan.c b/sysdeps/ieee754/dbl-64/s_tan.c index 015b027..df8eedd 100644 --- a/sysdeps/ieee754/dbl-64/s_tan.c +++ b/sysdeps/ieee754/dbl-64/s_tan.c @@ -36,7 +36,7 @@ #include #include "endian.h" -#include "dla.h" +#include #include "mpa.h" #include "MathLib.h" #include "math.h" diff --git a/sysdeps/x86_64/dla.h b/sysdeps/x86_64/dla.h new file mode 100644 index 0000000..bb6c8c4 --- /dev/null +++ b/sysdeps/x86_64/dla.h @@ -0,0 +1,9 @@ +#ifdef __FMA4__ +# define DLA_FMA(x,y,z) \ + ({ double __zz; \ + asm ("vfmsubsd %3, %2, %1, %0" \ + : "=x" (__zz) : "x" (x), "xm" (y), "x" (z)); \ + __zz; }) +#endif + +#include "sysdeps/ieee754/dbl-64/dla.h" -- 2.7.4