diff options
author | Joseph Myers <joseph@codesourcery.com> | 2013-10-12 12:22:14 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2013-10-12 12:22:14 +0000 |
commit | 8a50944770a5c638b6718bd942798b871153757f (patch) | |
tree | e93ba4c1422f00b7b07b37648f7d1da7cd4cf9a8 /soft-fp | |
parent | 98998e9f518e3b76c2bf63f825f930bd7f6486f1 (diff) | |
download | glibc-8a50944770a5c638b6718bd942798b871153757f.tar.gz glibc-8a50944770a5c638b6718bd942798b871153757f.tar.xz glibc-8a50944770a5c638b6718bd942798b871153757f.zip |
soft-fp: make ordered comparisons raise "invalid" for quiet NaNs (bug 14910).
Diffstat (limited to 'soft-fp')
-rw-r--r-- | soft-fp/gedf2.c | 2 | ||||
-rw-r--r-- | soft-fp/gesf2.c | 2 | ||||
-rw-r--r-- | soft-fp/getf2.c | 2 | ||||
-rw-r--r-- | soft-fp/ledf2.c | 2 | ||||
-rw-r--r-- | soft-fp/lesf2.c | 2 | ||||
-rw-r--r-- | soft-fp/letf2.c | 2 |
6 files changed, 6 insertions, 6 deletions
diff --git a/soft-fp/gedf2.c b/soft-fp/gedf2.c index a36f5723a4..fa2b525c3c 100644 --- a/soft-fp/gedf2.c +++ b/soft-fp/gedf2.c @@ -41,7 +41,7 @@ CMPtype __gedf2(DFtype a, DFtype b) FP_UNPACK_RAW_D(A, a); FP_UNPACK_RAW_D(B, b); FP_CMP_D(r, A, B, -2); - if (r == -2 && (FP_ISSIGNAN_D(A) || FP_ISSIGNAN_D(B))) + if (r == -2) FP_SET_EXCEPTION(FP_EX_INVALID); FP_HANDLE_EXCEPTIONS; diff --git a/soft-fp/gesf2.c b/soft-fp/gesf2.c index 899fcc5c90..4778937419 100644 --- a/soft-fp/gesf2.c +++ b/soft-fp/gesf2.c @@ -41,7 +41,7 @@ CMPtype __gesf2(SFtype a, SFtype b) FP_UNPACK_RAW_S(A, a); FP_UNPACK_RAW_S(B, b); FP_CMP_S(r, A, B, -2); - if (r == -2 && (FP_ISSIGNAN_S(A) || FP_ISSIGNAN_S(B))) + if (r == -2) FP_SET_EXCEPTION(FP_EX_INVALID); FP_HANDLE_EXCEPTIONS; diff --git a/soft-fp/getf2.c b/soft-fp/getf2.c index d9cb26de07..4c544d4dd9 100644 --- a/soft-fp/getf2.c +++ b/soft-fp/getf2.c @@ -41,7 +41,7 @@ CMPtype __getf2(TFtype a, TFtype b) FP_UNPACK_RAW_Q(A, a); FP_UNPACK_RAW_Q(B, b); FP_CMP_Q(r, A, B, -2); - if (r == -2 && (FP_ISSIGNAN_Q(A) || FP_ISSIGNAN_Q(B))) + if (r == -2) FP_SET_EXCEPTION(FP_EX_INVALID); FP_HANDLE_EXCEPTIONS; diff --git a/soft-fp/ledf2.c b/soft-fp/ledf2.c index 6922d2ff6e..7d54e9896a 100644 --- a/soft-fp/ledf2.c +++ b/soft-fp/ledf2.c @@ -41,7 +41,7 @@ CMPtype __ledf2(DFtype a, DFtype b) FP_UNPACK_RAW_D(A, a); FP_UNPACK_RAW_D(B, b); FP_CMP_D(r, A, B, 2); - if (r == 2 && (FP_ISSIGNAN_D(A) || FP_ISSIGNAN_D(B))) + if (r == 2) FP_SET_EXCEPTION(FP_EX_INVALID); FP_HANDLE_EXCEPTIONS; diff --git a/soft-fp/lesf2.c b/soft-fp/lesf2.c index cee56143c0..954a418cdc 100644 --- a/soft-fp/lesf2.c +++ b/soft-fp/lesf2.c @@ -41,7 +41,7 @@ CMPtype __lesf2(SFtype a, SFtype b) FP_UNPACK_RAW_S(A, a); FP_UNPACK_RAW_S(B, b); FP_CMP_S(r, A, B, 2); - if (r == 2 && (FP_ISSIGNAN_S(A) || FP_ISSIGNAN_S(B))) + if (r == 2) FP_SET_EXCEPTION(FP_EX_INVALID); FP_HANDLE_EXCEPTIONS; diff --git a/soft-fp/letf2.c b/soft-fp/letf2.c index 7644b26036..76d6119f1c 100644 --- a/soft-fp/letf2.c +++ b/soft-fp/letf2.c @@ -41,7 +41,7 @@ CMPtype __letf2(TFtype a, TFtype b) FP_UNPACK_RAW_Q(A, a); FP_UNPACK_RAW_Q(B, b); FP_CMP_Q(r, A, B, 2); - if (r == 2 && (FP_ISSIGNAN_Q(A) || FP_ISSIGNAN_Q(B))) + if (r == 2) FP_SET_EXCEPTION(FP_EX_INVALID); FP_HANDLE_EXCEPTIONS; |