[libc-commits] [libc] e5174fe - [libc] Make ceilf128 use the emulated float128 type (#207735)
via libc-commits
libc-commits at lists.llvm.org
Sat Aug 15 11:17:51 PDT 2026
Author: Zorojuro
Date: 2026-08-15T23:47:46+05:30
New Revision: e5174fe683e882f6bbd2ef023c9c9e293b273a98
URL: https://github.com/llvm/llvm-project/commit/e5174fe683e882f6bbd2ef023c9c9e293b273a98
DIFF: https://github.com/llvm/llvm-project/commit/e5174fe683e882f6bbd2ef023c9c9e293b273a98.diff
LOG: [libc] Make ceilf128 use the emulated float128 type (#207735)
This tests the emulated float128 type using ceilf128
Added:
Modified:
libc/config/baremetal/aarch64/entrypoints.txt
libc/config/baremetal/arm/entrypoints.txt
libc/config/baremetal/riscv/entrypoints.txt
libc/config/darwin/aarch64/entrypoints.txt
libc/config/darwin/x86_64/entrypoints.txt
libc/config/freebsd/x86_64/entrypoints.txt
libc/config/gpu/amdgpu/entrypoints.txt
libc/config/gpu/nvptx/entrypoints.txt
libc/config/linux/aarch64/entrypoints.txt
libc/config/linux/arm/entrypoints.txt
libc/config/linux/riscv/entrypoints.txt
libc/config/linux/x86_64/entrypoints.txt
libc/config/windows/entrypoints.txt
libc/shared/math/ceilf128.h
libc/src/__support/math/CMakeLists.txt
libc/src/__support/math/ceilf128.h
libc/src/math/ceilf128.h
libc/src/math/generic/CMakeLists.txt
libc/src/math/generic/ceilf128.cpp
libc/test/shared/CMakeLists.txt
libc/test/shared/shared_math_constexpr_test.cpp
libc/test/shared/shared_math_test.cpp
libc/test/src/math/CMakeLists.txt
libc/test/src/math/ceilf128_test.cpp
libc/test/src/math/smoke/CMakeLists.txt
libc/test/src/math/smoke/ceilf128_test.cpp
Removed:
################################################################################
diff --git a/libc/config/baremetal/aarch64/entrypoints.txt b/libc/config/baremetal/aarch64/entrypoints.txt
index 6c9733799f010..81958d224f70d 100644
--- a/libc/config/baremetal/aarch64/entrypoints.txt
+++ b/libc/config/baremetal/aarch64/entrypoints.txt
@@ -371,6 +371,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.cbrtbf16
libc.src.math.ceil
libc.src.math.ceilf
+ libc.src.math.ceilf128
libc.src.math.ceill
libc.src.math.copysign
libc.src.math.copysignf
@@ -732,7 +733,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
# math.h C23 _Float128 entrypoints
libc.src.math.atan2f128
libc.src.math.canonicalizef128
- libc.src.math.ceilf128
libc.src.math.copysignf128
libc.src.math.daddf128
libc.src.math.ddivf128
diff --git a/libc/config/baremetal/arm/entrypoints.txt b/libc/config/baremetal/arm/entrypoints.txt
index a6b0dc50d0305..ee3ec63132cc2 100644
--- a/libc/config/baremetal/arm/entrypoints.txt
+++ b/libc/config/baremetal/arm/entrypoints.txt
@@ -383,6 +383,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.cbrtbf16
libc.src.math.ceil
libc.src.math.ceilf
+ libc.src.math.ceilf128
libc.src.math.ceill
libc.src.math.copysign
libc.src.math.copysignf
@@ -743,7 +744,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
# math.h C23 _Float128 entrypoints
libc.src.math.atan2f128
libc.src.math.canonicalizef128
- libc.src.math.ceilf128
libc.src.math.copysignf128
libc.src.math.daddf128
libc.src.math.ddivf128
diff --git a/libc/config/baremetal/riscv/entrypoints.txt b/libc/config/baremetal/riscv/entrypoints.txt
index 4423bbad287e7..c9f7c042bf4a8 100644
--- a/libc/config/baremetal/riscv/entrypoints.txt
+++ b/libc/config/baremetal/riscv/entrypoints.txt
@@ -379,6 +379,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.cbrtbf16
libc.src.math.ceil
libc.src.math.ceilf
+ libc.src.math.ceilf128
libc.src.math.ceill
libc.src.math.copysign
libc.src.math.copysignf
@@ -740,7 +741,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
# math.h C23 _Float128 entrypoints
libc.src.math.atan2f128
libc.src.math.canonicalizef128
- libc.src.math.ceilf128
libc.src.math.copysignf128
libc.src.math.daddf128
libc.src.math.ddivf128
diff --git a/libc/config/darwin/aarch64/entrypoints.txt b/libc/config/darwin/aarch64/entrypoints.txt
index 7e2f5d12a4ea5..0ca00419a916c 100644
--- a/libc/config/darwin/aarch64/entrypoints.txt
+++ b/libc/config/darwin/aarch64/entrypoints.txt
@@ -190,6 +190,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.cbrtbf16
libc.src.math.ceil
libc.src.math.ceilf
+ libc.src.math.ceilf128
libc.src.math.ceill
libc.src.math.copysign
libc.src.math.copysignf
@@ -552,7 +553,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
# math.h C23 _Float128 entrypoints
libc.src.math.atan2f128
libc.src.math.canonicalizef128
- libc.src.math.ceilf128
libc.src.math.copysignf128
libc.src.math.daddf128
libc.src.math.ddivf128
diff --git a/libc/config/darwin/x86_64/entrypoints.txt b/libc/config/darwin/x86_64/entrypoints.txt
index 18184e8136a9e..136d5a458d484 100644
--- a/libc/config/darwin/x86_64/entrypoints.txt
+++ b/libc/config/darwin/x86_64/entrypoints.txt
@@ -123,6 +123,7 @@ set(TARGET_LIBM_ENTRYPOINTS
#libc.src.math.copysignl
#libc.src.math.ceil
#libc.src.math.ceilf
+ #libc.src.math.ceilf128
#libc.src.math.ceill
#libc.src.math.coshf
#libc.src.math.cosf
diff --git a/libc/config/freebsd/x86_64/entrypoints.txt b/libc/config/freebsd/x86_64/entrypoints.txt
index 23ad71602708c..2223504718444 100644
--- a/libc/config/freebsd/x86_64/entrypoints.txt
+++ b/libc/config/freebsd/x86_64/entrypoints.txt
@@ -134,6 +134,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.copysignl
libc.src.math.ceil
libc.src.math.ceilf
+ libc.src.math.ceilf128
libc.src.math.ceill
libc.src.math.cos
libc.src.math.cosf
@@ -491,7 +492,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
libc.src.math.atan2f128
libc.src.math.atan2l
libc.src.math.canonicalizef128
- libc.src.math.ceilf128
libc.src.math.copysignf128
libc.src.math.daddf128
libc.src.math.ddivf128
diff --git a/libc/config/gpu/amdgpu/entrypoints.txt b/libc/config/gpu/amdgpu/entrypoints.txt
index f94a6edd69759..12783aa4e5316 100644
--- a/libc/config/gpu/amdgpu/entrypoints.txt
+++ b/libc/config/gpu/amdgpu/entrypoints.txt
@@ -322,6 +322,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.cbrtbf16
libc.src.math.ceil
libc.src.math.ceilf
+ libc.src.math.ceilf128
libc.src.math.ceill
libc.src.math.copysign
libc.src.math.copysignf
diff --git a/libc/config/gpu/nvptx/entrypoints.txt b/libc/config/gpu/nvptx/entrypoints.txt
index 3c52dd8437daa..5820448e06663 100644
--- a/libc/config/gpu/nvptx/entrypoints.txt
+++ b/libc/config/gpu/nvptx/entrypoints.txt
@@ -318,6 +318,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.cbrtbf16
libc.src.math.ceil
libc.src.math.ceilf
+ libc.src.math.ceilf128
libc.src.math.ceill
libc.src.math.copysign
libc.src.math.copysignf
diff --git a/libc/config/linux/aarch64/entrypoints.txt b/libc/config/linux/aarch64/entrypoints.txt
index 16e8ee0e9af4a..071a7830b43d3 100644
--- a/libc/config/linux/aarch64/entrypoints.txt
+++ b/libc/config/linux/aarch64/entrypoints.txt
@@ -528,6 +528,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.cbrtbf16
libc.src.math.ceil
libc.src.math.ceilf
+ libc.src.math.ceilf128
libc.src.math.ceill
libc.src.math.copysign
libc.src.math.copysignf
@@ -879,7 +880,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
# math.h C23 _Float128 entrypoints
libc.src.math.atan2f128
libc.src.math.canonicalizef128
- libc.src.math.ceilf128
libc.src.math.copysignf128
libc.src.math.daddf128
libc.src.math.ddivf128
diff --git a/libc/config/linux/arm/entrypoints.txt b/libc/config/linux/arm/entrypoints.txt
index 2d517cb6cf20a..1adbb04bb4cbe 100644
--- a/libc/config/linux/arm/entrypoints.txt
+++ b/libc/config/linux/arm/entrypoints.txt
@@ -365,6 +365,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.cbrtbf16
libc.src.math.ceil
libc.src.math.ceilf
+ libc.src.math.ceilf128
libc.src.math.ceill
libc.src.math.copysign
libc.src.math.copysignf
diff --git a/libc/config/linux/riscv/entrypoints.txt b/libc/config/linux/riscv/entrypoints.txt
index b8a31134bb9c5..66dd9dd790737 100644
--- a/libc/config/linux/riscv/entrypoints.txt
+++ b/libc/config/linux/riscv/entrypoints.txt
@@ -597,6 +597,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.cbrtbf16
libc.src.math.ceil
libc.src.math.ceilf
+ libc.src.math.ceilf128
libc.src.math.ceill
libc.src.math.copysign
libc.src.math.copysignf
@@ -969,7 +970,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
libc.src.math.atan2f128
libc.src.math.atan2l
libc.src.math.canonicalizef128
- libc.src.math.ceilf128
libc.src.math.copysignf128
libc.src.math.daddf128
libc.src.math.ddivf128
diff --git a/libc/config/linux/x86_64/entrypoints.txt b/libc/config/linux/x86_64/entrypoints.txt
index 880679cfea06d..6045886c2f11c 100644
--- a/libc/config/linux/x86_64/entrypoints.txt
+++ b/libc/config/linux/x86_64/entrypoints.txt
@@ -602,6 +602,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.cbrtbf16
libc.src.math.ceil
libc.src.math.ceilf
+ libc.src.math.ceilf128
libc.src.math.ceill
libc.src.math.copysign
libc.src.math.copysignf
@@ -974,7 +975,6 @@ if(LIBC_TYPES_HAS_NATIVE_FLOAT128)
libc.src.math.atan2f128
libc.src.math.atan2l
libc.src.math.canonicalizef128
- libc.src.math.ceilf128
libc.src.math.copysignf128
libc.src.math.daddf128
libc.src.math.ddivf128
diff --git a/libc/config/windows/entrypoints.txt b/libc/config/windows/entrypoints.txt
index 5333bc4042070..142b83e71efe6 100644
--- a/libc/config/windows/entrypoints.txt
+++ b/libc/config/windows/entrypoints.txt
@@ -166,6 +166,7 @@ set(TARGET_LIBM_ENTRYPOINTS
libc.src.math.copysignl
libc.src.math.ceil
libc.src.math.ceilf
+ libc.src.math.ceilf128
libc.src.math.ceill
libc.src.math.cos
libc.src.math.cosf
diff --git a/libc/shared/math/ceilf128.h b/libc/shared/math/ceilf128.h
index 6171a0d3d8326..397c343fe6ff0 100644
--- a/libc/shared/math/ceilf128.h
+++ b/libc/shared/math/ceilf128.h
@@ -9,10 +9,6 @@
#ifndef LLVM_LIBC_SHARED_MATH_CEILF128_H
#define LLVM_LIBC_SHARED_MATH_CEILF128_H
-#include "include/llvm-libc-types/float128.h"
-
-#ifdef LIBC_TYPES_HAS_NATIVE_FLOAT128
-
#include "shared/libc_common.h"
#include "src/__support/math/ceilf128.h"
@@ -24,6 +20,4 @@ using math::ceilf128;
} // namespace shared
} // namespace LIBC_NAMESPACE_DECL
-#endif // LIBC_TYPES_HAS_NATIVE_FLOAT128
-
#endif // LLVM_LIBC_SHARED_MATH_CEILF128_H
diff --git a/libc/src/__support/math/CMakeLists.txt b/libc/src/__support/math/CMakeLists.txt
index 7945c12e388a7..db514db61a9df 100644
--- a/libc/src/__support/math/CMakeLists.txt
+++ b/libc/src/__support/math/CMakeLists.txt
@@ -813,7 +813,7 @@ add_header_library(
HDRS
ceilf128.h
DEPENDS
- libc.include.llvm-libc-types.float128
+ libc.src.__support.FPUtil.float128
libc.src.__support.FPUtil.nearest_integer_operations
libc.src.__support.macros.config
)
diff --git a/libc/src/__support/math/ceilf128.h b/libc/src/__support/math/ceilf128.h
index c7cc343176ee6..47f3fbbd86a95 100644
--- a/libc/src/__support/math/ceilf128.h
+++ b/libc/src/__support/math/ceilf128.h
@@ -9,21 +9,18 @@
#ifndef LLVM_LIBC_SRC___SUPPORT_MATH_CEILF128_H
#define LLVM_LIBC_SRC___SUPPORT_MATH_CEILF128_H
-#include "include/llvm-libc-types/float128.h"
-
-#ifdef LIBC_TYPES_HAS_NATIVE_FLOAT128
-
#include "src/__support/FPUtil/NearestIntegerOperations.h"
+#include "src/__support/FPUtil/float128.h"
#include "src/__support/macros/config.h"
namespace LIBC_NAMESPACE_DECL {
namespace math {
-LIBC_INLINE constexpr float128 ceilf128(float128 x) { return fputil::ceil(x); }
+using LIBC_NAMESPACE::fputil::Float128;
+
+LIBC_INLINE constexpr Float128 ceilf128(Float128 x) { return fputil::ceil(x); }
} // namespace math
} // namespace LIBC_NAMESPACE_DECL
-#endif // LIBC_TYPES_HAS_NATIVE_FLOAT128
-
#endif // LLVM_LIBC_SRC___SUPPORT_MATH_CEILF128_H
diff --git a/libc/src/math/ceilf128.h b/libc/src/math/ceilf128.h
index 211b8131a9559..23e8c703b80fa 100644
--- a/libc/src/math/ceilf128.h
+++ b/libc/src/math/ceilf128.h
@@ -9,11 +9,16 @@
#ifndef LLVM_LIBC_SRC_MATH_CEILF128_H
#define LLVM_LIBC_SRC_MATH_CEILF128_H
+#include "src/__support/FPUtil/float128.h"
#include "src/__support/macros/config.h"
#include "src/__support/macros/properties/types.h"
namespace LIBC_NAMESPACE_DECL {
+#ifndef LIBC_TYPES_HAS_NATIVE_FLOAT128
+using float128 = LIBC_NAMESPACE::fputil::Float128;
+#endif // LIBC_TYPES_HAS_NATIVE_FLOAT128
+
float128 ceilf128(float128 x);
} // namespace LIBC_NAMESPACE_DECL
diff --git a/libc/src/math/generic/CMakeLists.txt b/libc/src/math/generic/CMakeLists.txt
index 1a81f84db853d..80c2053066f16 100644
--- a/libc/src/math/generic/CMakeLists.txt
+++ b/libc/src/math/generic/CMakeLists.txt
@@ -161,6 +161,7 @@ add_entrypoint_object(
HDRS
../ceilf128.h
DEPENDS
+ libc.src.__support.CPP.bit
libc.src.__support.math.ceilf128
)
diff --git a/libc/src/math/generic/ceilf128.cpp b/libc/src/math/generic/ceilf128.cpp
index fd9c206612207..5737f887db220 100644
--- a/libc/src/math/generic/ceilf128.cpp
+++ b/libc/src/math/generic/ceilf128.cpp
@@ -7,12 +7,15 @@
//===----------------------------------------------------------------------===//
#include "src/math/ceilf128.h"
+#include "src/__support/CPP/bit.h"
#include "src/__support/math/ceilf128.h"
namespace LIBC_NAMESPACE_DECL {
+using LIBC_NAMESPACE::fputil::Float128;
+
LLVM_LIBC_FUNCTION(float128, ceilf128, (float128 x)) {
- return math::ceilf128(x);
+ return cpp::bit_cast<float128>(math::ceilf128(cpp::bit_cast<Float128>(x)));
}
} // namespace LIBC_NAMESPACE_DECL
diff --git a/libc/test/shared/CMakeLists.txt b/libc/test/shared/CMakeLists.txt
index 49232caf377bc..74eda7cdaf065 100644
--- a/libc/test/shared/CMakeLists.txt
+++ b/libc/test/shared/CMakeLists.txt
@@ -17,6 +17,7 @@ else()
SRCS
shared_math_test.cpp
DEPENDS
+ libc.src.__support.FPUtil.float128
libc.src.__support.FPUtil.fp_bits
libc.src.__support.math.acos
libc.src.__support.math.acosbf16
@@ -527,6 +528,7 @@ else()
SRCS
shared_math_constexpr_test.cpp
DEPENDS
+ libc.src.__support.FPUtil.float128
libc.src.__support.math.asinbf16
libc.src.__support.math.bf16subl
libc.src.__support.math.canonicalize
diff --git a/libc/test/shared/shared_math_constexpr_test.cpp b/libc/test/shared/shared_math_constexpr_test.cpp
index 1548e317761e2..6f9df85f3bb1c 100644
--- a/libc/test/shared/shared_math_constexpr_test.cpp
+++ b/libc/test/shared/shared_math_constexpr_test.cpp
@@ -9,8 +9,11 @@
#define LIBC_ENABLE_CONSTEXPR 1
#include "shared/math.h"
+#include "src/__support/FPUtil/float128.h"
#include "test/UnitTest/Test.h"
+using LIBC_NAMESPACE::fputil::Float128;
+
#ifdef LIBC_USE_CONSTEXPR
//===----------------------------------------------------------------------===//
@@ -374,7 +377,13 @@ static_assert(0 == LIBC_NAMESPACE::shared::isnanl(0.0L));
#endif
//===----------------------------------------------------------------------===//
-// Float128 Tests
+// Emulated Float128 Tests
+//===----------------------------------------------------------------------===//
+
+static_assert(Float128(0.0) == LIBC_NAMESPACE::shared::ceilf128(Float128(0.0)));
+
+//===----------------------------------------------------------------------===//
+// Native Float128 Tests
//===----------------------------------------------------------------------===//
#ifdef LIBC_TYPES_HAS_NATIVE_FLOAT128
@@ -384,7 +393,6 @@ static_assert(0 == [] {
float128 x = float128(0.0);
return LIBC_NAMESPACE::shared::canonicalizef128(&cx, &x);
}());
-static_assert(float128(0.0) == LIBC_NAMESPACE::shared::ceilf128(float128(0.0)));
static_assert(float128(1.0) ==
LIBC_NAMESPACE::shared::fabsf128(float128(-1.0)));
static_assert(float128(0.0) ==
diff --git a/libc/test/shared/shared_math_test.cpp b/libc/test/shared/shared_math_test.cpp
index 8bf4260c255b5..8850deda1c805 100644
--- a/libc/test/shared/shared_math_test.cpp
+++ b/libc/test/shared/shared_math_test.cpp
@@ -7,9 +7,12 @@
//===----------------------------------------------------------------------===//
#include "shared/math.h"
+#include "src/__support/FPUtil/float128.h"
#include "test/UnitTest/FPMatcher.h"
#include "test/UnitTest/Test.h"
+using LIBC_NAMESPACE::fputil::Float128;
+
#ifdef LIBC_TYPES_HAS_FLOAT16
TEST(LlvmLibcSharedMathTest, AllFloat16) {
@@ -576,6 +579,11 @@ TEST(LlvmLibcSharedMathTest, AllLongDouble) {
#endif // LIBC_TYPES_LONG_DOUBLE_IS_DOUBLE_DOUBLE
+// Emulated float128 tests
+TEST(LlvmLibcSharedMathTest, AllEmuFloat128) {
+ EXPECT_FP_EQ(Float128(0.0), LIBC_NAMESPACE::shared::ceilf128(Float128(0.0)));
+}
+
#ifdef LIBC_TYPES_HAS_NATIVE_FLOAT128
TEST(LlvmLibcSharedMathTest, AllFloat128) {
@@ -621,7 +629,6 @@ TEST(LlvmLibcSharedMathTest, AllFloat128) {
float128(0.0), float128(0.0)));
EXPECT_FP_EQ(bfloat16(2.0), LIBC_NAMESPACE::shared::bf16divf128(
float128(4.0), float128(2.0)));
- EXPECT_FP_EQ(float128(0.0), LIBC_NAMESPACE::shared::ceilf128(float128(0.0)));
EXPECT_FP_EQ(float128(0.0), LIBC_NAMESPACE::shared::copysignf128(
float128(0.0), float128(0.0)));
EXPECT_FP_EQ(float128(0.0),
diff --git a/libc/test/src/math/CMakeLists.txt b/libc/test/src/math/CMakeLists.txt
index 850cf31e8f44f..bf337783bfe23 100644
--- a/libc/test/src/math/CMakeLists.txt
+++ b/libc/test/src/math/CMakeLists.txt
@@ -434,6 +434,7 @@ add_fp_unittest(
DEPENDS
libc.src.math.ceilf128
libc.src.__support.CPP.algorithm
+ libc.src.__support.FPUtil.float128
libc.src.__support.FPUtil.fp_bits
)
diff --git a/libc/test/src/math/ceilf128_test.cpp b/libc/test/src/math/ceilf128_test.cpp
index f0da8258f79bc..ba5a768610a65 100644
--- a/libc/test/src/math/ceilf128_test.cpp
+++ b/libc/test/src/math/ceilf128_test.cpp
@@ -8,6 +8,11 @@
#include "CeilTest.h"
+#include "src/__support/FPUtil/float128.h"
#include "src/math/ceilf128.h"
+#ifndef LIBC_TYPES_HAS_NATIVE_FLOAT128
+using float128 = LIBC_NAMESPACE::fputil::Float128;
+#endif // LIBC_TYPES_HAS_NATIVE_FLOAT128
+
LIST_CEIL_TESTS(float128, LIBC_NAMESPACE::ceilf128)
diff --git a/libc/test/src/math/smoke/CMakeLists.txt b/libc/test/src/math/smoke/CMakeLists.txt
index a42a6e70f773f..91d76f2c7973c 100644
--- a/libc/test/src/math/smoke/CMakeLists.txt
+++ b/libc/test/src/math/smoke/CMakeLists.txt
@@ -616,6 +616,7 @@ add_fp_unittest(
CeilTest.h
DEPENDS
libc.src.math.ceilf128
+ libc.src.__support.FPUtil.float128
libc.src.__support.FPUtil.fp_bits
)
diff --git a/libc/test/src/math/smoke/ceilf128_test.cpp b/libc/test/src/math/smoke/ceilf128_test.cpp
index f0da8258f79bc..2547e38256270 100644
--- a/libc/test/src/math/smoke/ceilf128_test.cpp
+++ b/libc/test/src/math/smoke/ceilf128_test.cpp
@@ -7,7 +7,11 @@
//===----------------------------------------------------------------------===//
#include "CeilTest.h"
-
+#include "src/__support/FPUtil/float128.h"
#include "src/math/ceilf128.h"
+#ifndef LIBC_TYPES_HAS_NATIVE_FLOAT128
+using float128 = LIBC_NAMESPACE::fputil::Float128;
+#endif // LIBC_TYPES_HAS_NATIVE_FLOAT128
+
LIST_CEIL_TESTS(float128, LIBC_NAMESPACE::ceilf128)
More information about the libc-commits
mailing list