aboutsummaryrefslogtreecommitdiff
path: root/gcc/builtins.def
diff options
context:
space:
mode:
authorRoger Sayle <roger@eyesopen.com>2003-05-23 20:45:40 +0000
committerRoger Sayle <sayle@gcc.gnu.org>2003-05-23 20:45:40 +0000
commit29f523bef0d37fedc90c9c4d73ed7fd6b5e8237c (patch)
tree2d249c1630830eb3302bb11242b3adef2ac554a9 /gcc/builtins.def
parenta7050d49c52f3596fd94474499772b2bf330f886 (diff)
downloadgcc-29f523bef0d37fedc90c9c4d73ed7fd6b5e8237c.zip
gcc-29f523bef0d37fedc90c9c4d73ed7fd6b5e8237c.tar.gz
gcc-29f523bef0d37fedc90c9c4d73ed7fd6b5e8237c.tar.bz2
builtins.def: Defome atan...
* builtins.def: Defome atan, atanf, atanl, tan, tanf and tanl builtin functions (and their __builtin_* variants). * builtins.c (mathfn_built_in): Handle tan{,f,l} and atan{,f,l}. (expand_builtin): Don't expand tan{,f,l} or atan{,f,l} when not optimizing. * doc/extend.texi: Document new tan and atan builtins, and their float and long double variants. * gcc.dg/builtins-1.c: Add tests for tan and atan. * gcc.dg/builtins-4.c: Add test for fmod. From-SVN: r67137
Diffstat (limited to 'gcc/builtins.def')
-rw-r--r--gcc/builtins.def30
1 files changed, 30 insertions, 0 deletions
diff --git a/gcc/builtins.def b/gcc/builtins.def
index a45641c..1a09d6f 100644
--- a/gcc/builtins.def
+++ b/gcc/builtins.def
@@ -495,6 +495,16 @@ DEF_LIB_BUILTIN(BUILT_IN_LOG,
: (flag_unsafe_math_optimizations
? ATTR_CONST_NOTHROW_LIST
: ATTR_PURE_NOTHROW_LIST))
+DEF_LIB_BUILTIN(BUILT_IN_TAN,
+ "__builtin_tan",
+ BT_FN_DOUBLE_DOUBLE,
+ flag_unsafe_math_optimizations ? ATTR_CONST_NOTHROW_LIST
+ : ATTR_PURE_NOTHROW_LIST)
+DEF_LIB_BUILTIN(BUILT_IN_ATAN,
+ "__builtin_atan",
+ BT_FN_DOUBLE_DOUBLE,
+ flag_unsafe_math_optimizations ? ATTR_CONST_NOTHROW_LIST
+ : ATTR_PURE_NOTHROW_LIST)
DEF_LIB_BUILTIN(BUILT_IN_POW,
"__builtin_pow",
BT_FN_DOUBLE_DOUBLE_DOUBLE,
@@ -547,6 +557,16 @@ DEF_C99_C90RES_BUILTIN(BUILT_IN_LOGF,
: (flag_unsafe_math_optimizations
? ATTR_CONST_NOTHROW_LIST
: ATTR_PURE_NOTHROW_LIST))
+DEF_C99_C90RES_BUILTIN(BUILT_IN_TANF,
+ "__builtin_tanf",
+ BT_FN_FLOAT_FLOAT,
+ flag_unsafe_math_optimizations ? ATTR_CONST_NOTHROW_LIST
+ : ATTR_PURE_NOTHROW_LIST)
+DEF_C99_C90RES_BUILTIN(BUILT_IN_ATANF,
+ "__builtin_atanf",
+ BT_FN_FLOAT_FLOAT,
+ flag_unsafe_math_optimizations ? ATTR_CONST_NOTHROW_LIST
+ : ATTR_PURE_NOTHROW_LIST)
DEF_C99_C90RES_BUILTIN(BUILT_IN_POWF,
"__builtin_powf",
BT_FN_FLOAT_FLOAT_FLOAT,
@@ -599,6 +619,16 @@ DEF_C99_C90RES_BUILTIN(BUILT_IN_LOGL,
: (flag_unsafe_math_optimizations
? ATTR_CONST_NOTHROW_LIST
: ATTR_PURE_NOTHROW_LIST))
+DEF_C99_C90RES_BUILTIN(BUILT_IN_TANL,
+ "__builtin_tanl",
+ BT_FN_LONG_DOUBLE_LONG_DOUBLE,
+ flag_unsafe_math_optimizations ? ATTR_CONST_NOTHROW_LIST
+ : ATTR_PURE_NOTHROW_LIST)
+DEF_C99_C90RES_BUILTIN(BUILT_IN_ATANL,
+ "__builtin_atanl",
+ BT_FN_LONG_DOUBLE_LONG_DOUBLE,
+ flag_unsafe_math_optimizations ? ATTR_CONST_NOTHROW_LIST
+ : ATTR_PURE_NOTHROW_LIST)
DEF_C99_C90RES_BUILTIN(BUILT_IN_POWL,
"__builtin_powl",
BT_FN_LONG_DOUBLE_LONG_DOUBLE_LONG_DOUBLE,