aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/sparc/sparc32
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/sparc/sparc32')
-rw-r--r--sysdeps/sparc/sparc32/soft-fp/q_cmp.c4
-rw-r--r--sysdeps/sparc/sparc32/soft-fp/q_cmpe.c4
-rw-r--r--sysdeps/sparc/sparc32/soft-fp/q_feq.c4
-rw-r--r--sysdeps/sparc/sparc32/soft-fp/q_fge.c4
-rw-r--r--sysdeps/sparc/sparc32/soft-fp/q_fgt.c4
-rw-r--r--sysdeps/sparc/sparc32/soft-fp/q_fle.c4
-rw-r--r--sysdeps/sparc/sparc32/soft-fp/q_flt.c4
-rw-r--r--sysdeps/sparc/sparc32/soft-fp/q_fne.c4
8 files changed, 8 insertions, 24 deletions
diff --git a/sysdeps/sparc/sparc32/soft-fp/q_cmp.c b/sysdeps/sparc/sparc32/soft-fp/q_cmp.c
index 837b3dd..acc1d1d 100644
--- a/sysdeps/sparc/sparc32/soft-fp/q_cmp.c
+++ b/sysdeps/sparc/sparc32/soft-fp/q_cmp.c
@@ -30,10 +30,8 @@ int _Q_cmp(const long double a, const long double b)
FP_UNPACK_RAW_Q(A, a);
FP_UNPACK_RAW_Q(B, b);
- FP_CMP_Q(r, B, A, 3);
+ FP_CMP_Q(r, B, A, 3, 1);
if (r == -1) r = 2;
- if (r == 3 && (FP_ISSIGNAN_Q(A) || FP_ISSIGNAN_Q(B)))
- FP_SET_EXCEPTION(FP_EX_INVALID);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/sysdeps/sparc/sparc32/soft-fp/q_cmpe.c b/sysdeps/sparc/sparc32/soft-fp/q_cmpe.c
index d4ac7bd..a5d4670 100644
--- a/sysdeps/sparc/sparc32/soft-fp/q_cmpe.c
+++ b/sysdeps/sparc/sparc32/soft-fp/q_cmpe.c
@@ -31,10 +31,8 @@ int _Q_cmpe(const long double a, const long double b)
FP_UNPACK_RAW_Q(A, a);
FP_UNPACK_RAW_Q(B, b);
- FP_CMP_Q(r, B, A, 3);
+ FP_CMP_Q(r, B, A, 3, 2);
if (r == -1) r = 2;
- if (r == 3)
- FP_SET_EXCEPTION(FP_EX_INVALID);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/sysdeps/sparc/sparc32/soft-fp/q_feq.c b/sysdeps/sparc/sparc32/soft-fp/q_feq.c
index 61a8ff1..cb7db6d 100644
--- a/sysdeps/sparc/sparc32/soft-fp/q_feq.c
+++ b/sysdeps/sparc/sparc32/soft-fp/q_feq.c
@@ -30,9 +30,7 @@ int _Q_feq(const long double a, const long double b)
FP_UNPACK_RAW_Q(A, a);
FP_UNPACK_RAW_Q(B, b);
- FP_CMP_EQ_Q(r, A, B);
- if (r && (FP_ISSIGNAN_Q(A) || FP_ISSIGNAN_Q(B)))
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_CMP_EQ_Q(r, A, B, 1);
FP_HANDLE_EXCEPTIONS;
return !r;
diff --git a/sysdeps/sparc/sparc32/soft-fp/q_fge.c b/sysdeps/sparc/sparc32/soft-fp/q_fge.c
index 7fca349..cca1003 100644
--- a/sysdeps/sparc/sparc32/soft-fp/q_fge.c
+++ b/sysdeps/sparc/sparc32/soft-fp/q_fge.c
@@ -30,9 +30,7 @@ int _Q_fge(const long double a, const long double b)
FP_UNPACK_RAW_Q(A, a);
FP_UNPACK_RAW_Q(B, b);
- FP_CMP_Q(r, B, A, 3);
- if (r == 3)
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_CMP_Q(r, B, A, 3, 2);
FP_HANDLE_EXCEPTIONS;
return (r <= 0);
diff --git a/sysdeps/sparc/sparc32/soft-fp/q_fgt.c b/sysdeps/sparc/sparc32/soft-fp/q_fgt.c
index f5b2acf..00f837d 100644
--- a/sysdeps/sparc/sparc32/soft-fp/q_fgt.c
+++ b/sysdeps/sparc/sparc32/soft-fp/q_fgt.c
@@ -30,9 +30,7 @@ int _Q_fgt(const long double a, const long double b)
FP_UNPACK_RAW_Q(A, a);
FP_UNPACK_RAW_Q(B, b);
- FP_CMP_Q(r, B, A, 3);
- if (r == 3)
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_CMP_Q(r, B, A, 3, 2);
FP_HANDLE_EXCEPTIONS;
return (r == -1);
diff --git a/sysdeps/sparc/sparc32/soft-fp/q_fle.c b/sysdeps/sparc/sparc32/soft-fp/q_fle.c
index c108fb9..b44f448 100644
--- a/sysdeps/sparc/sparc32/soft-fp/q_fle.c
+++ b/sysdeps/sparc/sparc32/soft-fp/q_fle.c
@@ -30,9 +30,7 @@ int _Q_fle(const long double a, const long double b)
FP_UNPACK_RAW_Q(A, a);
FP_UNPACK_RAW_Q(B, b);
- FP_CMP_Q(r, B, A, -2);
- if (r == -2)
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_CMP_Q(r, B, A, -2, 2);
FP_HANDLE_EXCEPTIONS;
return (r >= 0);
diff --git a/sysdeps/sparc/sparc32/soft-fp/q_flt.c b/sysdeps/sparc/sparc32/soft-fp/q_flt.c
index 56d140e..caa188d 100644
--- a/sysdeps/sparc/sparc32/soft-fp/q_flt.c
+++ b/sysdeps/sparc/sparc32/soft-fp/q_flt.c
@@ -30,9 +30,7 @@ int _Q_flt(const long double a, const long double b)
FP_UNPACK_RAW_Q(A, a);
FP_UNPACK_RAW_Q(B, b);
- FP_CMP_Q(r, B, A, 3);
- if (r == 3)
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_CMP_Q(r, B, A, 3, 2);
FP_HANDLE_EXCEPTIONS;
return (r == 1);
diff --git a/sysdeps/sparc/sparc32/soft-fp/q_fne.c b/sysdeps/sparc/sparc32/soft-fp/q_fne.c
index 78c2d6f..e22f6c9 100644
--- a/sysdeps/sparc/sparc32/soft-fp/q_fne.c
+++ b/sysdeps/sparc/sparc32/soft-fp/q_fne.c
@@ -30,9 +30,7 @@ int _Q_fne(const long double a, const long double b)
FP_UNPACK_RAW_Q(A, a);
FP_UNPACK_RAW_Q(B, b);
- FP_CMP_EQ_Q(r, A, B);
- if (r && (FP_ISSIGNAN_Q(A) || FP_ISSIGNAN_Q(B)))
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_CMP_EQ_Q(r, A, B, 1);
FP_HANDLE_EXCEPTIONS;
return r;