]>
Commit | Line | Data |
---|---|---|
99dee823 | 1 | /* Copyright (C) 2004-2021 Free Software Foundation, Inc. |
ad41bd84 JM |
2 | |
3 | This file is part of GCC. | |
4 | ||
5 | GCC is free software; you can redistribute it and/or modify it under | |
6 | the terms of the GNU General Public License as published by the Free | |
7 | Software Foundation; either version 3, or (at your option) any later | |
8 | version. | |
9 | ||
10 | GCC is distributed in the hope that it will be useful, but WITHOUT ANY | |
11 | WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
12 | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
13 | for more details. | |
14 | ||
15 | You should have received a copy of the GNU General Public License | |
16 | along with GCC; see the file COPYING3. If not see | |
17 | <http://www.gnu.org/licenses/>. */ | |
18 | ||
e8525382 SK |
19 | /* DEFINE_MATH_BUILTIN (CODE, NAME, ARGTYPE) |
20 | NAME The name of the builtin | |
21 | SNAME The name of the builtin as a string | |
22 | ARGTYPE The type of the arguments. See f95-lang.c | |
23 | ||
24 | Use DEFINE_MATH_BUILTIN_C if the complex versions of the builtin are | |
25 | also available. */ | |
26 | DEFINE_MATH_BUILTIN_C (ACOS, "acos", 0) | |
f489fba1 | 27 | DEFINE_MATH_BUILTIN_C (ACOSH, "acosh", 0) |
e8525382 | 28 | DEFINE_MATH_BUILTIN_C (ASIN, "asin", 0) |
f489fba1 | 29 | DEFINE_MATH_BUILTIN_C (ASINH, "asinh", 0) |
e8525382 | 30 | DEFINE_MATH_BUILTIN_C (ATAN, "atan", 0) |
f489fba1 | 31 | DEFINE_MATH_BUILTIN_C (ATANH, "atanh", 0) |
e8525382 SK |
32 | DEFINE_MATH_BUILTIN (ATAN2, "atan2", 1) |
33 | DEFINE_MATH_BUILTIN_C (COS, "cos", 0) | |
34 | DEFINE_MATH_BUILTIN_C (COSH, "cosh", 0) | |
35 | DEFINE_MATH_BUILTIN_C (EXP, "exp", 0) | |
36 | DEFINE_MATH_BUILTIN_C (LOG, "log", 0) | |
37 | DEFINE_MATH_BUILTIN_C (LOG10, "log10", 0) | |
38 | DEFINE_MATH_BUILTIN_C (SIN, "sin", 0) | |
39 | DEFINE_MATH_BUILTIN_C (SINH, "sinh", 0) | |
40 | DEFINE_MATH_BUILTIN_C (SQRT, "sqrt", 0) | |
41 | DEFINE_MATH_BUILTIN_C (TAN, "tan", 0) | |
42 | DEFINE_MATH_BUILTIN_C (TANH, "tanh", 0) | |
43 | DEFINE_MATH_BUILTIN (J0, "j0", 0) | |
44 | DEFINE_MATH_BUILTIN (J1, "j1", 0) | |
5cfd56a7 | 45 | DEFINE_MATH_BUILTIN (JN, "jn", 5) |
e8525382 SK |
46 | DEFINE_MATH_BUILTIN (Y0, "y0", 0) |
47 | DEFINE_MATH_BUILTIN (Y1, "y1", 0) | |
5cfd56a7 | 48 | DEFINE_MATH_BUILTIN (YN, "yn", 5) |
e8525382 SK |
49 | DEFINE_MATH_BUILTIN (ERF, "erf", 0) |
50 | DEFINE_MATH_BUILTIN (ERFC, "erfc", 0) | |
7bc19392 | 51 | DEFINE_MATH_BUILTIN (TGAMMA,"tgamma", 0) |
75be5dc0 | 52 | DEFINE_MATH_BUILTIN (LGAMMA,"lgamma", 0) |
f489fba1 | 53 | DEFINE_MATH_BUILTIN (HYPOT, "hypot", 1) |
2921157d | 54 | |
a3c85b74 | 55 | /* OTHER_BUILTIN (CODE, NAME, PROTOTYPE_TYPE, CONST) |
2921157d FXC |
56 | For floating-point builtins that do not directly correspond to a |
57 | Fortran intrinsic. This is used to map the different variants (float, | |
58 | double and long double) and to build the quad-precision decls. */ | |
a3c85b74 FXC |
59 | OTHER_BUILTIN (CABS, "cabs", cabs, true) |
60 | OTHER_BUILTIN (COPYSIGN, "copysign", 2, true) | |
166d08bd | 61 | OTHER_BUILTIN (CPOW, "cpow", cpow, true) |
a3c85b74 FXC |
62 | OTHER_BUILTIN (FABS, "fabs", 1, true) |
63 | OTHER_BUILTIN (FMOD, "fmod", 2, true) | |
64 | OTHER_BUILTIN (FREXP, "frexp", frexp, false) | |
3b7ea188 | 65 | OTHER_BUILTIN (LOGB, "logb", 1, true) |
a3c85b74 FXC |
66 | OTHER_BUILTIN (LLROUND, "llround", llround, true) |
67 | OTHER_BUILTIN (LROUND, "lround", lround, true) | |
6715d47b | 68 | OTHER_BUILTIN (IROUND, "iround", iround, true) |
a3c85b74 | 69 | OTHER_BUILTIN (NEXTAFTER, "nextafter", 2, true) |
3b7ea188 FXC |
70 | OTHER_BUILTIN (POW, "pow", 2, true) |
71 | OTHER_BUILTIN (REMAINDER, "remainder", 2, true) | |
72 | OTHER_BUILTIN (RINT, "rint", 1, true) | |
a3c85b74 FXC |
73 | OTHER_BUILTIN (ROUND, "round", 1, true) |
74 | OTHER_BUILTIN (SCALBN, "scalbn", scalbn, true) | |
75 | OTHER_BUILTIN (TRUNC, "trunc", 1, true) |