[PATCH v1] math: Mark many {u}fromfp/{u}fromfpx tests as XFAIL for, ldbl-128ibm

Sachin Monga smonga@linux.ibm.com
Fri Jan 16 06:18:56 GMT 2026


 From 5000c050f322d0a3ddacdb4db81de887193b1cbd Mon Sep 17 00:00:00 2001
From: Sachin Monga <smonga@linux.ibm.com>
Date: Fri, 16 Jan 2026 06:00:09 +0000
Subject: [PATCH v1] math: Mark many {u}fromfp/{u}fromfpx tests as XFAIL for
  ldbl-128ibm

Following the fix for bug 28327, several {u}fromfp and {u}fromfpx test cases
now fail on powerpc64 (big-endian) when using the IBM extended precision
long double format (ldbl-128ibm). These failures are not due to bugs in
the {u}fromfp/{u}fromfpx implementations themselves, but stem from incorrect
signed zero handling in the underlying rounding functions: roundl, ceill,
truncl, and floorl.

These signed-zero bugs have been reported separately in bug 33623. Once 
those
functions are corrected (and their own tests strengthened), these
tests should pass cleanly for ldbl-128ibm on powerpc64 as well.

This patch marks the affected cases as XFAIL to prevent test-suite noise
of powerpc64 (big-endian) while the underlying issues are resolved.
---
  math/libm-test-fromfp.inc   | 96 ++++++++++++++++++-------------------
  math/libm-test-fromfpx.inc  | 96 ++++++++++++++++++-------------------
  math/libm-test-ufromfp.inc  | 96 ++++++++++++++++++-------------------
  math/libm-test-ufromfpx.inc | 96 ++++++++++++++++++-------------------
  4 files changed, 192 insertions(+), 192 deletions(-)

diff --git a/math/libm-test-fromfp.inc b/math/libm-test-fromfp.inc
index 6f9ae529c4..f93adb329d 100644
--- a/math/libm-test-fromfp.inc
+++ b/math/libm-test-fromfp.inc
@@ -3424,10 +3424,10 @@ static const struct test_fiu_f_data 
fromfp_test_data[] =
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
64, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 1, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 2, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -3449,10 +3449,10 @@ static const struct test_fiu_f_data 
fromfp_test_data[] =
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
64, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
UINT_MAX, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 1, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 2, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -3477,10 +3477,10 @@ static const struct test_fiu_f_data 
fromfp_test_data[] =
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, 64, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 1, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 2, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -3502,10 +3502,10 @@ static const struct test_fiu_f_data 
fromfp_test_data[] =
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, 64, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 1, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 2, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -4165,15 +4165,15 @@ static const struct test_fiu_f_data 
fromfp_test_data[] =
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_UPWARD, 64, 1, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_UPWARD, 
UINT_MAX, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 1, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 2, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 64, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 
UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 1, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 2, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 64, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 
UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 1, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 2, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 64, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 1, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 2, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 64, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 1, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 2, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -4187,20 +4187,20 @@ static const struct test_fiu_f_data 
fromfp_test_data[] =
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_TONEAREST, 64, 
1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffp0, FP_INT_TONEAREST, 
UINT_MAX, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 1, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 2, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 64, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 
UINT_MAX, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 1, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 2, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 64, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 
UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 1, 
-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 2, 
-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 64, 
-1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 
UINT_MAX, -1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 1, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 2, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 64, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 1, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 2, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 64, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 1, -1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 2, -1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -4220,15 +4220,15 @@ static const struct test_fiu_f_data 
fromfp_test_data[] =
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 64, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, UINT_MAX, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 1, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 2, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 64, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 1, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 2, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 64, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, UINT_MAX, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 1, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 2, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -4242,20 +4242,20 @@ static const struct test_fiu_f_data 
fromfp_test_data[] =
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEAREST, 64, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEAREST, UINT_MAX, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 1, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 2, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 64, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, UINT_MAX, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 1, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 2, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 64, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 1, -1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 2, -1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 64, -1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, UINT_MAX, -1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 1, -1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 2, -1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
diff --git a/math/libm-test-fromfpx.inc b/math/libm-test-fromfpx.inc
index 6b3c46ad3f..99e9e7a2a7 100644
--- a/math/libm-test-fromfpx.inc
+++ b/math/libm-test-fromfpx.inc
@@ -3424,10 +3424,10 @@ static const struct test_fiu_f_data 
fromfpx_test_data[] =
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
64, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 1, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 2, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -3449,10 +3449,10 @@ static const struct test_fiu_f_data 
fromfpx_test_data[] =
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
64, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
UINT_MAX, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 
0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 
1, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 
2, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -3477,10 +3477,10 @@ static const struct test_fiu_f_data 
fromfpx_test_data[] =
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, 64, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 1, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 2, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -3502,10 +3502,10 @@ static const struct test_fiu_f_data 
fromfpx_test_data[] =
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, 64, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, UINT_MAX, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 1, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 2, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -4165,15 +4165,15 @@ static const struct test_fiu_f_data 
fromfpx_test_data[] =
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_UPWARD, 64, 1, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_UPWARD, 
UINT_MAX, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 1, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 2, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 64, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 
UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 1, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 2, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 64, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 
UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 1, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 2, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 64, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 1, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 2, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 64, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 1, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 2, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -4187,20 +4187,20 @@ static const struct test_fiu_f_data 
fromfpx_test_data[] =
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_TONEAREST, 64, 
1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffp0, FP_INT_TONEAREST, 
UINT_MAX, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 1, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 2, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 64, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 
UINT_MAX, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 1, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 2, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 64, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 
UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 1, 
-1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 2, 
-1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 64, 
-1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 
UINT_MAX, -1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 1, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 2, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
64, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 1, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 2, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
64, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 1, -1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 2, -1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -4220,15 +4220,15 @@ static const struct test_fiu_f_data 
fromfpx_test_data[] =
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 64, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, UINT_MAX, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 1, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 2, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 64, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 1, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 2, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 64, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, UINT_MAX, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 1, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 2, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -4242,20 +4242,20 @@ static const struct test_fiu_f_data 
fromfpx_test_data[] =
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEAREST, 64, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEAREST, UINT_MAX, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 1, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 2, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 64, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, UINT_MAX, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 1, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 2, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 64, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 1, -1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 2, -1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 64, -1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, UINT_MAX, -1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 1, -1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (fromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 2, -1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
diff --git a/math/libm-test-ufromfp.inc b/math/libm-test-ufromfp.inc
index 00ba105294..92b06f703e 100644
--- a/math/libm-test-ufromfp.inc
+++ b/math/libm-test-ufromfp.inc
@@ -2285,10 +2285,10 @@ static const struct test_fiu_f_data 
ufromfp_test_data[] =
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
64, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 1, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 2, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -2310,10 +2310,10 @@ static const struct test_fiu_f_data 
ufromfp_test_data[] =
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
64, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
UINT_MAX, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 
0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 
1, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 
2, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -2337,10 +2337,10 @@ static const struct test_fiu_f_data 
ufromfp_test_data[] =
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, 64, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 1, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 2, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -2362,10 +2362,10 @@ static const struct test_fiu_f_data 
ufromfp_test_data[] =
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, 64, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 1, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 2, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -2991,15 +2991,15 @@ static const struct test_fiu_f_data 
ufromfp_test_data[] =
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_UPWARD, 64, 1, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_UPWARD, 
UINT_MAX, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 1, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 2, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 64, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 
UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 1, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 2, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 64, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 
UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 1, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 2, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 64, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 1, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 2, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 64, 
0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 1, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 2, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -3011,20 +3011,20 @@ static const struct test_fiu_f_data 
ufromfp_test_data[] =
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_TONEAREST, 64, 
1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffp0, FP_INT_TONEAREST, 
UINT_MAX, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 1, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 2, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 64, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 
UINT_MAX, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 1, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 2, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 64, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 
UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 1, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 2, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 64, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 
UINT_MAX, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 1, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 2, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
64, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 1, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 2, 
minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
64, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 1, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 2, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
@@ -3043,15 +3043,15 @@ static const struct test_fiu_f_data 
ufromfp_test_data[] =
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 64, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, UINT_MAX, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 1, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 2, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 64, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 1, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 2, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 64, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, UINT_MAX, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, 0, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 1, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 2, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -3063,20 +3063,20 @@ static const struct test_fiu_f_data 
ufromfp_test_data[] =
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEAREST, 64, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEAREST, UINT_MAX, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 1, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 2, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 64, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, UINT_MAX, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 1, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 2, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 64, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 1, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 2, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 64, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, UINT_MAX, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, minus_zero, 
NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 1, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfp, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 2, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
diff --git a/math/libm-test-ufromfpx.inc b/math/libm-test-ufromfpx.inc
index e53788ba5e..ae29ad9956 100644
--- a/math/libm-test-ufromfpx.inc
+++ b/math/libm-test-ufromfpx.inc
@@ -2285,10 +2285,10 @@ static const struct test_fiu_f_data 
ufromfpx_test_data[] =
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
64, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 
0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 
1, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 
2, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -2310,10 +2310,10 @@ static const struct test_fiu_f_data 
ufromfpx_test_data[] =
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
64, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp-1, FP_INT_TOWARDZERO, 
UINT_MAX, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 
0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 
1, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp-1, FP_INT_TONEAREST, 
2, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -2337,10 +2337,10 @@ static const struct test_fiu_f_data 
ufromfpx_test_data[] =
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, 64, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 1, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 2, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -2362,10 +2362,10 @@ static const struct test_fiu_f_data 
ufromfpx_test_data[] =
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, 64, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TOWARDZERO, UINT_MAX, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 1, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 2, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, 64, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEARESTFROMZERO, UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 1, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp-1, 
FP_INT_TONEAREST, 2, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -2991,15 +2991,15 @@ static const struct test_fiu_f_data 
ufromfpx_test_data[] =
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_UPWARD, 64, 
1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_UPWARD, 
UINT_MAX, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 1, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 2, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 64, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 
UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 1, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 2, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 64, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 
UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 1, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 2, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
64, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 1, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 2, 
0, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
64, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 1, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 2, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -3011,20 +3011,20 @@ static const struct test_fiu_f_data 
ufromfpx_test_data[] =
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_TONEAREST, 
64, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffp0, FP_INT_TONEAREST, 
UINT_MAX, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 1, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 2, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 64, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 
UINT_MAX, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 1, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 2, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 64, 
minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_UPWARD, 
UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 0, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 1, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 2, 
qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 
64, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_DOWNWARD, 
UINT_MAX, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
1, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
2, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
64, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
1, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
2, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
64, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, FP_INT_TOWARDZERO, 
UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 1, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffp0, 
FP_INT_TONEARESTFROMZERO, 2, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
@@ -3043,15 +3043,15 @@ static const struct test_fiu_f_data 
ufromfpx_test_data[] =
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 64, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, UINT_MAX, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 1, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 2, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 64, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 1, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 2, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 64, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, UINT_MAX, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, 0, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, 0, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 1, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 2, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
@@ -3063,20 +3063,20 @@ static const struct test_fiu_f_data 
ufromfpx_test_data[] =
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEAREST, 64, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, 0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEAREST, UINT_MAX, 1, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 1, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 2, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 64, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, UINT_MAX, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 1, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 2, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, 64, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_UPWARD, UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 1, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 2, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, 64, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_DOWNWARD, UINT_MAX, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, minus_zero, INEXACT_EXCEPTION|ERRNO_UNCHANGED),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 1, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 2, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, 64, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
+    TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TOWARDZERO, UINT_MAX, minus_zero, 
INEXACT_EXCEPTION|ERRNO_UNCHANGED|XFAIL_IBM128_LIBGCC),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 0, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 1, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
      TEST_fiu_f (ufromfpx, -0x0.ffffffffffffffffffffffffffcp0, 
FP_INT_TONEARESTFROMZERO, 2, qnan_value, 
NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
-- 
2.51.0




More information about the Libc-alpha mailing list