[libcxx-commits] [PATCH] D158547: [PowerPC] Exclude frexp(long double) on linux

Lei Huang via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Fri Aug 25 10:18:01 PDT 2023


This revision was automatically updated to reflect the committed changes.
Closed by commit rG5adac8bebcf2: [PowerPC] Exclude frexp(long double) on linux (authored by lei).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D158547/new/

https://reviews.llvm.org/D158547

Files:
  libcxx/test/libcxx/numerics/c.math/constexpr-cxx23-clang.pass.cpp


Index: libcxx/test/libcxx/numerics/c.math/constexpr-cxx23-clang.pass.cpp
===================================================================
--- libcxx/test/libcxx/numerics/c.math/constexpr-cxx23-clang.pass.cpp
+++ libcxx/test/libcxx/numerics/c.math/constexpr-cxx23-clang.pass.cpp
@@ -58,9 +58,15 @@
 
   ASSERT_NOT_CONSTEXPR_CXX23(std::frexp(0.0f, &DummyInt) == 0.0f);
   ASSERT_NOT_CONSTEXPR_CXX23(std::frexp(0.0, &DummyInt) == 0.0);
+//FIXME: currently linux powerpc does not support this expansion
+// since 0.0L lowers to ppcf128 and special handling is required.
+#if !defined(__LONG_DOUBLE_IBM128__)
   ASSERT_NOT_CONSTEXPR_CXX23(std::frexp(0.0L, &DummyInt) == 0.0L);
+#endif
   ASSERT_NOT_CONSTEXPR_CXX23(std::frexpf(0.0f, &DummyInt) == 0.0f);
+#if !defined(__LONG_DOUBLE_IBM128__)
   ASSERT_NOT_CONSTEXPR_CXX23(std::frexpl(0.0L, &DummyInt) == 0.0L);
+#endif
 
   ASSERT_NOT_CONSTEXPR_CXX23(std::ilogb(1.0f) == 0);
   ASSERT_NOT_CONSTEXPR_CXX23(std::ilogb(1.0) == 0);


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D158547.553529.patch
Type: text/x-patch
Size: 976 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20230825/4e3ebd76/attachment.bin>


More information about the libcxx-commits mailing list