[libc-commits] [PATCH] D152471: [libc] disable printf Lf tests for float128 plats
Michael Jones via Phabricator via libc-commits
libc-commits at lists.llvm.org
Thu Jun 8 14:35:58 PDT 2023
This revision was not accepted when it landed; it landed in state "Needs Review".
This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rG5df182f121ce: [libc] disable printf Lf tests for float128 plats (authored by michaelrj).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D152471/new/
https://reviews.llvm.org/D152471
Files:
libc/test/src/stdio/sprintf_test.cpp
Index: libc/test/src/stdio/sprintf_test.cpp
===================================================================
--- libc/test/src/stdio/sprintf_test.cpp
+++ libc/test/src/stdio/sprintf_test.cpp
@@ -928,12 +928,16 @@
// Length Modifier Tests.
- // TODO: Fix long doubles (needs bigger table or alternate algorithm.)
- // Currently the table values are generated, which is very slow.
+ // TODO(michaelrj): Add tests for LONG_DOUBLE_IS_DOUBLE and 128 bit long
+ // double systems.
+ // TODO(michaelrj): Fix the tests to only depend on the digits the long double
+ // is accurate for.
written = __llvm_libc::sprintf(buff, "%Lf", 1.0L);
ASSERT_STREQ_LEN(written, buff, "1.000000");
+#if defined(SPECIAL_X86_LONG_DOUBLE)
+
written = __llvm_libc::sprintf(buff, "%Lf", 1e100L);
ASSERT_STREQ_LEN(written, buff,
"99999999999999999996693535322073426194986990198284960792713"
@@ -941,8 +945,6 @@
char big_buff[10000];
- // written = __llvm_libc::sprintf(big_buff, "%Lf", 0x1p16383L);
-
written = __llvm_libc::sprintf(big_buff, "%Lf", 1e1000L);
ASSERT_STREQ_LEN(
written, big_buff,
@@ -1035,10 +1037,8 @@
"231934194956788626761834746430104077432547436359522462253411168467463134"
"24896.000000");
-
written = __llvm_libc::sprintf(big_buff, "%.10Lf", 1e-10L);
- ASSERT_STREQ_LEN(
- written, big_buff, "0.0000000001");
+ ASSERT_STREQ_LEN(written, big_buff, "0.0000000001");
written = __llvm_libc::sprintf(big_buff, "%.7500Lf", 1e-4900L);
ASSERT_STREQ_LEN(
@@ -1149,6 +1149,7 @@
"570449525088342437216896462077260223998756027453411520977536701491759878"
"422771447006016890777855573925295187921971811871399320142563330377888532"
"179817332113");
+#endif // SPECIAL_X86_LONG_DOUBLE
/*
written = __llvm_libc::sprintf(buff, "%La", 0.1L);
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D152471.529731.patch
Type: text/x-patch
Size: 1854 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libc-commits/attachments/20230608/bb05e36c/attachment-0001.bin>
More information about the libc-commits
mailing list