1 // RUN: %clang_builtins %s %librt -o %t && %run %t
2 // REQUIRES: librt_has_comparetf2
6 #if __LP64__ && __LDBL_MANT_DIG__ == 113
10 int __unordtf2(long double a
, long double b
);
12 int test__unordtf2(long double a
, long double b
, enum EXPECTED_RESULT expected
)
14 int x
= __unordtf2(a
, b
);
15 int ret
= compareResultCMP(x
, expected
);
18 printf("error in test__unordtf2(%.20Lf, %.20Lf) = %d, "
19 "expected %s\n", a
, b
, x
, expectedStr(expected
));
24 char assumption_1
[sizeof(long double) * CHAR_BIT
== 128] = {0};
30 #if __LP64__ && __LDBL_MANT_DIG__ == 113
32 if (test__unordtf2(makeQNaN128(),
33 0x1.234567890abcdef1234567890abcp
+3L,
37 if (test__unordtf2(0x1.234567890abcdef1234567890abcp
+3L,
38 0x1.334567890abcdef1234567890abcp
+3L,
41 if (test__unordtf2(0x1.234567890abcdef1234567890abcp
+3L,
42 0x1.234567890abcdef1234567890abcp
+3L,
45 if (test__unordtf2(0x1.234567890abcdef1234567890abcp
+3L,
46 0x1.234567890abcdef1234567890abcp
-3L,