summaryrefslogtreecommitdiffstats
path: root/lib/msun/src/e_hypot.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/msun/src/e_hypot.c')
-rw-r--r--lib/msun/src/e_hypot.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/msun/src/e_hypot.c b/lib/msun/src/e_hypot.c
index e2f82ac..932b5db 100644
--- a/lib/msun/src/e_hypot.c
+++ b/lib/msun/src/e_hypot.c
@@ -11,9 +11,8 @@
* ====================================================
*/
-#ifndef lint
-static char rcsid[] = "$FreeBSD$";
-#endif
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
/* __ieee754_hypot(x,y)
*
@@ -68,7 +67,8 @@ __ieee754_hypot(double x, double y)
if(ha > 0x5f300000) { /* a>2**500 */
if(ha >= 0x7ff00000) { /* Inf or NaN */
u_int32_t low;
- w = a+b; /* for sNaN */
+ /* Use original arg order iff result is NaN; quieten sNaNs. */
+ w = fabs(x+0.0)+fabs(y+0.0);
GET_LOW_WORD(low,a);
if(((ha&0xfffff)|low)==0) w = a;
GET_LOW_WORD(low,b);
OpenPOWER on IntegriCloud