diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2015-08-20 08:56:52 -0700 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2015-08-20 16:25:22 -0700 |
commit | 80cc6cd67a2826754d5e4c72f6335f88e150d9ff (patch) | |
tree | 62b3a9abe30358dee385a7b9adb02f5b37e144ce /sysdeps/i386/i686/multiarch | |
parent | 135e3d117c4d177c10447beec3144a8bc243a8b1 (diff) | |
download | glibc-80cc6cd67a2826754d5e4c72f6335f88e150d9ff.tar.gz glibc-80cc6cd67a2826754d5e4c72f6335f88e150d9ff.tar.xz glibc-80cc6cd67a2826754d5e4c72f6335f88e150d9ff.zip |
Add i386 s_fma family multiarch functions
Diffstat (limited to 'sysdeps/i386/i686/multiarch')
-rw-r--r-- | sysdeps/i386/i686/multiarch/s_fma-fma.c | 29 | ||||
-rw-r--r-- | sysdeps/i386/i686/multiarch/s_fma.c | 36 | ||||
-rw-r--r-- | sysdeps/i386/i686/multiarch/s_fmaf-fma.c | 29 | ||||
-rw-r--r-- | sysdeps/i386/i686/multiarch/s_fmaf.c | 36 |
4 files changed, 0 insertions, 130 deletions
diff --git a/sysdeps/i386/i686/multiarch/s_fma-fma.c b/sysdeps/i386/i686/multiarch/s_fma-fma.c deleted file mode 100644 index 1a8b48bd58..0000000000 --- a/sysdeps/i386/i686/multiarch/s_fma-fma.c +++ /dev/null @@ -1,29 +0,0 @@ -/* FMA version of fma. - Copyright (C) 2010-2015 Free Software Foundation, Inc. - Contributed by Intel Corporation. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <config.h> - -#ifdef HAVE_AVX_SUPPORT -double -__fma_fma (double x, double y, double z) -{ - asm ("vfmadd213sd %3, %2, %0" : "=x" (x) : "0" (x), "x" (y), "xm" (z)); - return x; -} -#endif diff --git a/sysdeps/i386/i686/multiarch/s_fma.c b/sysdeps/i386/i686/multiarch/s_fma.c deleted file mode 100644 index cf2ede5309..0000000000 --- a/sysdeps/i386/i686/multiarch/s_fma.c +++ /dev/null @@ -1,36 +0,0 @@ -/* Multiple versions of fma. - Copyright (C) 2010-2015 Free Software Foundation, Inc. - Contributed by Intel Corporation. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <config.h> - -#ifdef HAVE_AVX_SUPPORT -#include <math.h> -#include <init-arch.h> - -extern double __fma_ia32 (double x, double y, double z) attribute_hidden; -extern double __fma_fma (double x, double y, double z) attribute_hidden; - -libm_ifunc (__fma, - HAS_ARCH_FEATURE (FMA_Usable) ? __fma_fma : __fma_ia32); -weak_alias (__fma, fma) - -# define __fma __fma_ia32 -#endif - -#include <sysdeps/ieee754/ldbl-96/s_fma.c> diff --git a/sysdeps/i386/i686/multiarch/s_fmaf-fma.c b/sysdeps/i386/i686/multiarch/s_fmaf-fma.c deleted file mode 100644 index 1775ef5dd0..0000000000 --- a/sysdeps/i386/i686/multiarch/s_fmaf-fma.c +++ /dev/null @@ -1,29 +0,0 @@ -/* FMA version of fmaf. - Copyright (C) 2010-2015 Free Software Foundation, Inc. - Contributed by Intel Corporation. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <config.h> - -#ifdef HAVE_AVX_SUPPORT -float -__fmaf_fma (float x, float y, float z) -{ - asm ("vfmadd213ss %3, %2, %0" : "=x" (x) : "0" (x), "x" (y), "xm" (z)); - return x; -} -#endif diff --git a/sysdeps/i386/i686/multiarch/s_fmaf.c b/sysdeps/i386/i686/multiarch/s_fmaf.c deleted file mode 100644 index 526cdf16e4..0000000000 --- a/sysdeps/i386/i686/multiarch/s_fmaf.c +++ /dev/null @@ -1,36 +0,0 @@ -/* Multiple versions of fmaf. - Copyright (C) 2010-2015 Free Software Foundation, Inc. - Contributed by Intel Corporation. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <config.h> - -#ifdef HAVE_AVX_SUPPORT -#include <math.h> -#include <init-arch.h> - -extern float __fmaf_ia32 (float x, float y, float z) attribute_hidden; -extern float __fmaf_fma (float x, float y, float z) attribute_hidden; - -libm_ifunc (__fmaf, - HAS_ARCH_FEATURE (FMA_Usable) ? __fmaf_fma : __fmaf_ia32); -weak_alias (__fmaf, fmaf) - -# define __fmaf __fmaf_ia32 -#endif - -#include <sysdeps/ieee754/dbl-64/s_fmaf.c> |