(root)/
glibc-2.38/
math/
w_coshl_compat.c
       1  /* w_acoshl.c -- long double version of w_acosh.c.
       2   */
       3  
       4  /*
       5   * ====================================================
       6   * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
       7   *
       8   * Developed at SunPro, a Sun Microsystems, Inc. business.
       9   * Permission to use, copy, modify, and distribute this
      10   * software is freely granted, provided that this notice
      11   * is preserved.
      12   * ====================================================
      13   */
      14  
      15  /*
      16   * wrapper coshl(x)
      17   */
      18  
      19  #include <math.h>
      20  #include <math_private.h>
      21  #include <math-svid-compat.h>
      22  #include <libm-alias-ldouble.h>
      23  
      24  #if LIBM_SVID_COMPAT
      25  long double
      26  __coshl (long double x)
      27  {
      28  	long double z = __ieee754_coshl (x);
      29  	if (__builtin_expect (!isfinite (z), 0) && isfinite (x)
      30  	    && _LIB_VERSION != _IEEE_)
      31  		return __kernel_standard_l (x, x, 205); /* cosh overflow */
      32  
      33  	return z;
      34  }
      35  libm_alias_ldouble (__cosh, cosh)
      36  #endif