Correct types of fields in libm-test.inc structures.
[jlayton/glibc.git] / math / w_cosh.c
1 /* Optimizations bu Ulrich Drepper <drepper@gmail.com>, 2011 */
2 /*
3  * ====================================================
4  * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
5  *
6  * Developed at SunPro, a Sun Microsystems, Inc. business.
7  * Permission to use, copy, modify, and distribute this
8  * software is freely granted, provided that this notice
9  * is preserved.
10  * ====================================================
11  */
12
13 /*
14  * wrapper cosh(x)
15  */
16
17 #include <math.h>
18 #include <math_private.h>
19
20 double
21 __cosh (double x)
22 {
23         double z = __ieee754_cosh (x);
24         if (__builtin_expect (!__finite (z), 0) && __finite (x)
25             && _LIB_VERSION != _IEEE_)
26                 return __kernel_standard (x, x, 5); /* cosh overflow */
27
28         return z;
29 }
30 weak_alias (__cosh, cosh)
31 #ifdef NO_LONG_DOUBLE
32 strong_alias (__cosh, __coshl)
33 weak_alias (__cosh, coshl)
34 #endif