diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-12-13 10:17:36 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-12-13 10:17:36 +0000 |
commit | d735c39197eb677d57697f4edc1b9cb57b92077a (patch) | |
tree | edd4f764129b7d185816c6c0b6b0db7d95bf7ba6 /gcc/builtins.def | |
parent | dac9919dff0a85f3455e168341969940e059c2db (diff) | |
download | ppe42-gcc-d735c39197eb677d57697f4edc1b9cb57b92077a.tar.gz ppe42-gcc-d735c39197eb677d57697f4edc1b9cb57b92077a.zip |
2006-12-13 Richard Guenther <rguenther@suse.de>
PR tree-optimization/17687
* builtins.def (BUILT_IN_CEXPI, BUILT_IN_CEXPIF, BUILT_IN_CEXPIL):
New builtins for imaginary argument cexp.
* builtin-types.def (BT_FN_COMPLEX_FLOAT_FLOAT,
BT_FN_COMPLEX_DOUBLE_DOUBLE, BT_FN_COMPLEX_LONGDOUBLE_LONGDOUBLE):
New required builtin types.
* builtins.c (expand_builtin_cexpi): Declare.
(mathfn_built_in): Handle BUILT_IN_CEXPI.
(expand_builtin_cexpi): New static helper.
(expand_builtin): Call it.
(do_mpfr_sincos): Adjust for CEXPI evaluation.
(fold_builtin_sincos): New function to fold sincos to cepxi.
* gcc.dg/builtins-59.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119824 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/builtins.def')
-rw-r--r-- | gcc/builtins.def | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/builtins.def b/gcc/builtins.def index 802e20c9f10..ca402a35ec7 100644 --- a/gcc/builtins.def +++ b/gcc/builtins.def @@ -452,6 +452,9 @@ DEF_C99_BUILTIN (BUILT_IN_CCOSL, "ccosl", BT_FN_COMPLEX_LONGDOUBLE_COMPLE DEF_C99_BUILTIN (BUILT_IN_CEXP, "cexp", BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE, ATTR_MATHFN_FPROUNDING) DEF_C99_BUILTIN (BUILT_IN_CEXPF, "cexpf", BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT, ATTR_MATHFN_FPROUNDING) DEF_C99_BUILTIN (BUILT_IN_CEXPL, "cexpl", BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE, ATTR_MATHFN_FPROUNDING) +DEF_GCC_BUILTIN (BUILT_IN_CEXPI, "cexpi", BT_FN_COMPLEX_DOUBLE_DOUBLE, ATTR_MATHFN_FPROUNDING) +DEF_GCC_BUILTIN (BUILT_IN_CEXPIF, "cexpif", BT_FN_COMPLEX_FLOAT_FLOAT, ATTR_MATHFN_FPROUNDING) +DEF_GCC_BUILTIN (BUILT_IN_CEXPIL, "cexpil", BT_FN_COMPLEX_LONGDOUBLE_LONGDOUBLE, ATTR_MATHFN_FPROUNDING) DEF_C99_BUILTIN (BUILT_IN_CIMAG, "cimag", BT_FN_DOUBLE_COMPLEX_DOUBLE, ATTR_CONST_NOTHROW_LIST) DEF_C99_BUILTIN (BUILT_IN_CIMAGF, "cimagf", BT_FN_FLOAT_COMPLEX_FLOAT, ATTR_CONST_NOTHROW_LIST) DEF_C99_BUILTIN (BUILT_IN_CIMAGL, "cimagl", BT_FN_LONGDOUBLE_COMPLEX_LONGDOUBLE, ATTR_CONST_NOTHROW_LIST) |