diff options
author | Ulrich Drepper <drepper@gmail.com> | 2011-10-23 13:31:01 -0400 |
---|---|---|
committer | Ulrich Drepper <drepper@gmail.com> | 2011-10-23 13:31:01 -0400 |
commit | 774a2669af652979ed965d7225502ba473b2da73 (patch) | |
tree | 93ceb2ed6f64a8678c7bafed854bda8fc3e8858a /sysdeps/x86_64 | |
parent | c8b3296bbeee2f482354f833f506ac91d142e147 (diff) | |
download | glibc-774a2669af652979ed965d7225502ba473b2da73.tar.gz glibc-774a2669af652979ed965d7225502ba473b2da73.tar.xz glibc-774a2669af652979ed965d7225502ba473b2da73.zip |
Clean up FMA use
The macro's name should reflect that subtraction is being done. And use __builtin_fma, it seems to work after all.
Diffstat (limited to 'sysdeps/x86_64')
-rw-r--r-- | sysdeps/x86_64/dla.h | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/sysdeps/x86_64/dla.h b/sysdeps/x86_64/dla.h index bb6c8c4be0..7aa06e5f6f 100644 --- a/sysdeps/x86_64/dla.h +++ b/sysdeps/x86_64/dla.h @@ -1,9 +1,6 @@ -#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; }) +#if defined __FMA4__ || defined __FMA__ +# define DLA_FMS(x,y,z) \ + __builtin_fma (x, y, -z) #endif #include "sysdeps/ieee754/dbl-64/dla.h" |