about summary refs log tree commit diff
path: root/sysdeps/ieee754/ldbl-128/e_hypotl.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/ieee754/ldbl-128/e_hypotl.c')
-rw-r--r--sysdeps/ieee754/ldbl-128/e_hypotl.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sysdeps/ieee754/ldbl-128/e_hypotl.c b/sysdeps/ieee754/ldbl-128/e_hypotl.c
index a93f5a4c8f..6c4e178fbe 100644
--- a/sysdeps/ieee754/ldbl-128/e_hypotl.c
+++ b/sysdeps/ieee754/ldbl-128/e_hypotl.c
@@ -67,6 +67,8 @@ __ieee754_hypotl(_Float128 x, _Float128 y)
 	   if(ha >= 0x7fff000000000000LL) {	/* Inf or NaN */
 	       u_int64_t low;
 	       w = a+b;			/* for sNaN */
+	       if (issignaling (a) || issignaling (b))
+		 return w;
 	       GET_LDOUBLE_LSW64(low,a);
 	       if(((ha&0xffffffffffffLL)|low)==0) w = a;
 	       GET_LDOUBLE_LSW64(low,b);