Merge glibc-ports into ports/ directory.
[platform/upstream/glibc.git] / math / w_sinhf.c
1 /* w_sinhf.c -- float version of w_sinh.c.
2  * Conversion to float by Ian Lance Taylor, Cygnus Support, ian@cygnus.com.
3  */
4
5 /*
6  * ====================================================
7  * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
8  *
9  * Developed at SunPro, a Sun Microsystems, Inc. business.
10  * Permission to use, copy, modify, and distribute this
11  * software is freely granted, provided that this notice
12  * is preserved.
13  * ====================================================
14  */
15
16 /*
17  * wrapper sinhf(x)
18  */
19
20 #include <math.h>
21 #include <math_private.h>
22
23 float
24 __sinhf (float x)
25 {
26         float z = __ieee754_sinhf (x);
27         if (__builtin_expect (!__finitef (z), 0) && __finitef (x)
28             && _LIB_VERSION != _IEEE_)
29             return __kernel_standard_f (x, x, 125); /* sinhf overflow */
30
31         return z;
32 }
33 weak_alias (__sinhf, sinhf)