+ IN_FLOAT (d = acosh (d), num);
+ return make_float (d);
+}
+
+DEFUN ("asinh", Fasinh, Sasinh, 1, 1, 0,
+ "Return the inverse hyperbolic sine of ARG.")
+ (num)
+ register Lisp_Object num;
+{
+ double d = extract_float (num);
+ IN_FLOAT (d = asinh (d), num);
+ return make_float (d);
+}
+
+DEFUN ("atanh", Fatanh, Satanh, 1, 1, 0,
+ "Return the inverse hyperbolic tangent of ARG.")
+ (num)
+ register Lisp_Object num;
+{
+ double d = extract_float (num);
+ IN_FLOAT (d = atanh (d), num);
+ return make_float (d);
+}
+
+DEFUN ("cosh", Fcosh, Scosh, 1, 1, 0,
+ "Return the hyperbolic cosine of ARG.")
+ (num)
+ register Lisp_Object num;
+{
+ double d = extract_float (num);
+ IN_FLOAT (d = cosh (d), num);
+ return make_float (d);
+}
+
+DEFUN ("sinh", Fsinh, Ssinh, 1, 1, 0,
+ "Return the hyperbolic sine of ARG.")
+ (num)
+ register Lisp_Object num;
+{
+ double d = extract_float (num);
+ IN_FLOAT (d = sinh (d), num);