Add another fma test.
[platform/upstream/glibc.git] / math / w_hypotl.c
1 /* w_hypotl.c -- long double version of w_hypot.c.
2  * Conversion to long double by Ulrich Drepper,
3  * Cygnus Support, drepper@cygnus.com.
4  */
5
6 /*
7  * ====================================================
8  * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
9  *
10  * Developed at SunPro, a Sun Microsystems, Inc. business.
11  * Permission to use, copy, modify, and distribute this
12  * software is freely granted, provided that this notice
13  * is preserved.
14  * ====================================================
15  */
16
17 /*
18  * wrapper hypotl(x,y)
19  */
20
21 #include <math.h>
22 #include <math_private.h>
23
24
25 long double
26 __hypotl(long double x, long double y)
27 {
28         long double z;
29         z = __ieee754_hypotl(x,y);
30         if(__builtin_expect(!__finitel(z), 0)
31            && __finitel(x) && __finitel(y) && _LIB_VERSION != _IEEE_)
32             return __kernel_standard_l(x, y, 204); /* hypot overflow */
33
34         return z;
35 }
36 weak_alias (__hypotl, hypotl)