aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/iresolve.c
diff options
context:
space:
mode:
authorJerry DeLisle <jvdelisle@verizon.net>2005-06-24 23:12:32 +0000
committerJerry DeLisle <jvdelisle@gcc.gnu.org>2005-06-24 23:12:32 +0000
commit1e399e2331cb4a82ab314c552c8492da1a9e39e5 (patch)
tree5e42ffb6be150d57d6f5548e53e219862aadd26c /gcc/fortran/iresolve.c
parente138a19f6b4731baded85fceef172a380d159634 (diff)
downloadgcc-1e399e2331cb4a82ab314c552c8492da1a9e39e5.zip
gcc-1e399e2331cb4a82ab314c552c8492da1a9e39e5.tar.gz
gcc-1e399e2331cb4a82ab314c552c8492da1a9e39e5.tar.bz2
re PR fortran/21915 ([4.0 only] Would like atanh etc. as intrinsics)
2005-06-24 Jerry DeLisle <jvdelisle@verizon.net> PR fortran/21915 * gfortran.h: Add symbols for new intrinsics * intrinsic.c: Add acosh, asinh, and atanh * intrinsic.h: Add prototypes * iresolve.c (gfc_resolve_acosh): New function (gfc_resolve_asinh): New (gfc_resolve_atanh): New * mathbuiltins.def: Add defines * simplify.c (gfc_simplify_acosh): New function (gfc_simplify_asinh): New (gfc_simplify_atanh): New From-SVN: r101304
Diffstat (limited to 'gcc/fortran/iresolve.c')
-rw-r--r--gcc/fortran/iresolve.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc/fortran/iresolve.c b/gcc/fortran/iresolve.c
index e939287..a45001e 100644
--- a/gcc/fortran/iresolve.c
+++ b/gcc/fortran/iresolve.c
@@ -84,6 +84,15 @@ gfc_resolve_acos (gfc_expr * f, gfc_expr * x)
void
+gfc_resolve_acosh (gfc_expr * f, gfc_expr * x)
+{
+ f->ts = x->ts;
+ f->value.function.name =
+ gfc_get_string ("__acosh_%c%d", gfc_type_letter (x->ts.type), x->ts.kind);
+}
+
+
+void
gfc_resolve_aimag (gfc_expr * f, gfc_expr * x)
{
f->ts.type = BT_REAL;
@@ -177,6 +186,13 @@ gfc_resolve_asin (gfc_expr * f, gfc_expr * x)
gfc_get_string ("__asin_%c%d", gfc_type_letter (x->ts.type), x->ts.kind);
}
+void
+gfc_resolve_asinh (gfc_expr * f, gfc_expr * x)
+{
+ f->ts = x->ts;
+ f->value.function.name =
+ gfc_get_string ("__asinh_%c%d", gfc_type_letter (x->ts.type), x->ts.kind);
+}
void
gfc_resolve_atan (gfc_expr * f, gfc_expr * x)
@@ -186,6 +202,13 @@ gfc_resolve_atan (gfc_expr * f, gfc_expr * x)
gfc_get_string ("__atan_%c%d", gfc_type_letter (x->ts.type), x->ts.kind);
}
+void
+gfc_resolve_atanh (gfc_expr * f, gfc_expr * x)
+{
+ f->ts = x->ts;
+ f->value.function.name =
+ gfc_get_string ("__atanh_%c%d", gfc_type_letter (x->ts.type), x->ts.kind);
+}
void
gfc_resolve_atan2 (gfc_expr * f, gfc_expr * x,