aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@gmail.com>2010-10-19 12:56:42 -0400
committerUlrich Drepper <drepper@gmail.com>2010-10-19 12:56:42 -0400
commit18edac4857531b4b034eef37a07e3b03117de2bf (patch)
tree76ab66c435d997cdcb07a559e3c7e313945436bf /sysdeps
parentd20501241ea423e477b357d93147530987e0d89e (diff)
downloadglibc-18edac4857531b4b034eef37a07e3b03117de2bf.zip
glibc-18edac4857531b4b034eef37a07e3b03117de2bf.tar.gz
glibc-18edac4857531b4b034eef37a07e3b03117de2bf.tar.bz2
Provide FP_FAST_FMA{,F,L} definitions for x86/x86-64.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/i386/bits/mathdef.h16
-rw-r--r--sysdeps/powerpc/bits/mathdef.h2
-rw-r--r--sysdeps/x86_64/bits/mathdef.h16
3 files changed, 31 insertions, 3 deletions
diff --git a/sysdeps/i386/bits/mathdef.h b/sysdeps/i386/bits/mathdef.h
index ec42ed5..479eb96 100644
--- a/sysdeps/i386/bits/mathdef.h
+++ b/sysdeps/i386/bits/mathdef.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1998, 1999, 2000, 2004 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 1999, 2000, 2004, 2010 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -43,4 +43,18 @@ typedef long double double_t; /* `double' expressions are evaluated as
# define FP_ILOGB0 (-2147483647 - 1)
# define FP_ILOGBNAN (-2147483647 - 1)
+/* The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l}
+ builtins are supported. */
+# if __FP_FAST_FMA
+# define FP_FAST_FMA 1
+# endif
+
+# if __FP_FAST_FMAF
+# define FP_FAST_FMAF 1
+# endif
+
+# if __FP_FAST_FMAL
+# define FP_FAST_FMAL 1
+# endif
+
#endif /* ISO C99 */
diff --git a/sysdeps/powerpc/bits/mathdef.h b/sysdeps/powerpc/bits/mathdef.h
index 0c99248..7723f0c 100644
--- a/sysdeps/powerpc/bits/mathdef.h
+++ b/sysdeps/powerpc/bits/mathdef.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997,1998,1999,2000,2003,2004,2006
+/* Copyright (C) 1997,1998,1999,2000,2003,2004,2006,2010
Free Software Foundation, Inc.
This file is part of the GNU C Library.
diff --git a/sysdeps/x86_64/bits/mathdef.h b/sysdeps/x86_64/bits/mathdef.h
index 7b16189..9146392 100644
--- a/sysdeps/x86_64/bits/mathdef.h
+++ b/sysdeps/x86_64/bits/mathdef.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001, 2004 Free Software Foundation, Inc.
+/* Copyright (C) 2001, 2004, 2010 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -45,4 +45,18 @@ typedef long double double_t; /* `double' expressions are evaluated as
# define FP_ILOGB0 (-2147483647 - 1)
# define FP_ILOGBNAN (-2147483647 - 1)
+/* The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l}
+ builtins are supported. */
+# if __FP_FAST_FMA
+# define FP_FAST_FMA 1
+# endif
+
+# if __FP_FAST_FMAF
+# define FP_FAST_FMAF 1
+# endif
+
+# if __FP_FAST_FMAL
+# define FP_FAST_FMAL 1
+# endif
+
#endif /* ISO C99 */