diff options
author | Steven G. Kargl <kargls@comcast.net> | 2004-08-29 15:58:16 +0000 |
---|---|---|
committer | Paul Brook <pbrook@gcc.gnu.org> | 2004-08-29 15:58:16 +0000 |
commit | e8525382d986350f38193ca20504631bfadc43ba (patch) | |
tree | 764a8802dba0b681b9c0d6f4248a2b2513c2b2fc /gcc/fortran/mathbuiltins.def | |
parent | 766ff1b11748f66da98c901b9498a90e72698c05 (diff) | |
download | gcc-e8525382d986350f38193ca20504631bfadc43ba.zip gcc-e8525382d986350f38193ca20504631bfadc43ba.tar.gz gcc-e8525382d986350f38193ca20504631bfadc43ba.tar.bz2 |
check.c (gfc_check_besn, [...]): New functions.
2004-08-29 Steven G. Kargl <kargls@comcast.net>
Paul Brook <paul@codesourcery.com>
* check.c (gfc_check_besn, gfc_check_g77_math1): New functions.
* f95-lang.c (DO_DEFINE_MATH_BUILTIN): Define.
(DEFINE_MATH_BUILTIN, DEFINE_MATH_BUILTIN_C): Use it.
(build_builtin_fntypes): New function.
(gfc_init_builtin_functions): Use it.
* gfortran.h (enum gfc_generic_isym_id): Add GFC_ISYM_{J,Y}{0,1,N}
and GFC_ISYM_ERF{,C}.
(gfc_c_int_kind): Declare.
* intrinsic.c (add_functions): Add [d]bes* and [d]erf*.
* intrinsic.h (gfc_check_besn, gfc_check_g77_math1, gfc_resolve_besn,
gfc_resolve_g77_math1): Add prototypes.
* resolve.c (gfc_resolve_besn, gfc_resolve_g77_math1): New functions.
* mathbuiltins.def: Add comment. Change third argument. Use
DEFINE_MATH_BUILTIN_C. Add bessel and error functions.
* trans-intrinsic.c (BUILT_IN_FUNCTION): Define.
(DEFINE_MATH_BUILTIN, DEFINE_MATH_BUILTIN_C): Use it.
* trans-types.c (gfc_c_int_kind): Declare.
(gfc_init_kinds): Set it.
testsuite/
* gfortran.dg/g77/README: Update.
* gfortran.dg/g77/erfc.f: Copy from g77.f-torture.
* gfortran.dg/g77/intrinsic-unix-bessel.f: Ditto.
* gfortran.dg/g77/intrinsic-unix-erf.f: Ditto.
libgfortran/
* intrinsics/bessel.c: New file.
* intrinsics/erf.c: New file.
* Makefie.am: Add intrinsics/bessel.c and intrinsics/erf.c.
* configure.ac: Test for C99 Bessel and Error functions.
* Makefile.in: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
Co-Authored-By: Paul Brook <paul@codesourcery.com>
From-SVN: r86727
Diffstat (limited to 'gcc/fortran/mathbuiltins.def')
-rw-r--r-- | gcc/fortran/mathbuiltins.def | 43 |
1 files changed, 29 insertions, 14 deletions
diff --git a/gcc/fortran/mathbuiltins.def b/gcc/fortran/mathbuiltins.def index c46c1d5..0bbf8d9 100644 --- a/gcc/fortran/mathbuiltins.def +++ b/gcc/fortran/mathbuiltins.def @@ -1,14 +1,29 @@ -DEFINE_MATH_BUILTIN (ACOS, "acos", 1) -DEFINE_MATH_BUILTIN (ASIN, "asin", 1) -DEFINE_MATH_BUILTIN (ATAN, "atan", 1) -DEFINE_MATH_BUILTIN (ATAN2, "atan2", 2) -DEFINE_MATH_BUILTIN (COS, "cos", 1) -DEFINE_MATH_BUILTIN (COSH, "cosh", 1) -DEFINE_MATH_BUILTIN (EXP, "exp", 1) -DEFINE_MATH_BUILTIN (LOG, "log", 1) -DEFINE_MATH_BUILTIN (LOG10, "log10", 1) -DEFINE_MATH_BUILTIN (SIN, "sin", 1) -DEFINE_MATH_BUILTIN (SINH, "sinh", 1) -DEFINE_MATH_BUILTIN (SQRT, "sqrt", 1) -DEFINE_MATH_BUILTIN (TAN, "tan", 1) -DEFINE_MATH_BUILTIN (TANH, "tanh", 1) +/* DEFINE_MATH_BUILTIN (CODE, NAME, ARGTYPE) + NAME The name of the builtin + SNAME The name of the builtin as a string + ARGTYPE The type of the arguments. See f95-lang.c + + Use DEFINE_MATH_BUILTIN_C if the complex versions of the builtin are + also available. */ +DEFINE_MATH_BUILTIN_C (ACOS, "acos", 0) +DEFINE_MATH_BUILTIN_C (ASIN, "asin", 0) +DEFINE_MATH_BUILTIN_C (ATAN, "atan", 0) +DEFINE_MATH_BUILTIN (ATAN2, "atan2", 1) +DEFINE_MATH_BUILTIN_C (COS, "cos", 0) +DEFINE_MATH_BUILTIN_C (COSH, "cosh", 0) +DEFINE_MATH_BUILTIN_C (EXP, "exp", 0) +DEFINE_MATH_BUILTIN_C (LOG, "log", 0) +DEFINE_MATH_BUILTIN_C (LOG10, "log10", 0) +DEFINE_MATH_BUILTIN_C (SIN, "sin", 0) +DEFINE_MATH_BUILTIN_C (SINH, "sinh", 0) +DEFINE_MATH_BUILTIN_C (SQRT, "sqrt", 0) +DEFINE_MATH_BUILTIN_C (TAN, "tan", 0) +DEFINE_MATH_BUILTIN_C (TANH, "tanh", 0) +DEFINE_MATH_BUILTIN (J0, "j0", 0) +DEFINE_MATH_BUILTIN (J1, "j1", 0) +DEFINE_MATH_BUILTIN (JN, "jn", 2) +DEFINE_MATH_BUILTIN (Y0, "y0", 0) +DEFINE_MATH_BUILTIN (Y1, "y1", 0) +DEFINE_MATH_BUILTIN (YN, "yn", 2) +DEFINE_MATH_BUILTIN (ERF, "erf", 0) +DEFINE_MATH_BUILTIN (ERFC, "erfc", 0) |