[libc-commits] [libc] [libc] Make `ceilf128` use the emulated float128 type (PR #206450)

via libc-commits libc-commits at lists.llvm.org
Mon Jun 29 04:19:21 PDT 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results

The build failed before running any tests. Click on a failure below to see the details.

<details>
<summary>lib/Support/CMakeFiles/LLVMSupport.dir/APFloat.cpp.o</summary>

```
FAILED: lib/Support/CMakeFiles/LLVMSupport.dir/APFloat.cpp.o
sccache /opt/llvm/bin/clang++ -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/lib/Support -I/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/include -I/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include -I/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../third-party/siphash/include -I/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc -gmlt -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Werror=global-constructors -O3 -DNDEBUG -std=c++17 -UNDEBUG -fno-exceptions -funwind-tables -fno-rtti -Wno-c99-extensions -MD -MT lib/Support/CMakeFiles/LLVMSupport.dir/APFloat.cpp.o -MF lib/Support/CMakeFiles/LLVMSupport.dir/APFloat.cpp.o.d -o lib/Support/CMakeFiles/LLVMSupport.dir/APFloat.cpp.o -c /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/APFloat.cpp
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/APFloat.cpp:43:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/shared/math.h:75:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/shared/math/ceilf128.h:13:
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/math/ceilf128.h:17:1: error: unknown type name 'c'
17 | c
| ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/math/ceilf128.h:18:1: error: expected unqualified-id
18 | namespace LIBC_NAMESPACE_DECL {
| ^
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/APFloat.cpp:43:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/shared/math.h:14:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/shared/math/acos.h:13:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/math/acos.h:18:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/sqrt.h:15:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/generic/sqrt.h:16:
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/cast.h:57:18: error: shift count is negative [-Werror,-Wshift-count-negative]
57 |           x_mant >>= InFPBits::FRACTION_LEN - OutFPBits::FRACTION_LEN;
|                  ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/float128.h:41:22: note: in instantiation of function template specialization '__llvm_libc_apfloat::fputil::cast<__llvm_libc_apfloat::fputil::Float128, double>' requested here
41 |       bits = fputil::cast<Float128>(value).bits;
|                      ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/NearestIntegerOperations.h:73:14: note: in instantiation of function template specialization '__llvm_libc_apfloat::fputil::Float128::Float128<double>' requested here
73 |       return T(-0.0);
|              ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/math/ceilf128.h:21:70: note: in instantiation of function template specialization '__llvm_libc_apfloat::fputil::ceil<__llvm_libc_apfloat::fputil::Float128, 0>' requested here
21 | LIBC_INLINE constexpr Float128 ceilf128(Float128 x) { return fputil::ceil(x); }
|                                                                      ^
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/APFloat.cpp:43:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/shared/math.h:14:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/shared/math/acos.h:13:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/math/acos.h:18:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/sqrt.h:15:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/generic/sqrt.h:16:
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/cast.h:57:18: error: shift count is negative [-Werror,-Wshift-count-negative]
57 |           x_mant >>= InFPBits::FRACTION_LEN - OutFPBits::FRACTION_LEN;
|                  ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/math/erfcf16.h:103:26: note: in instantiation of function template specialization '__llvm_libc_apfloat::fputil::cast<float, _Float16>' requested here
103 |       float xf = fputil::cast<float>(x);
|                          ^
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/APFloat.cpp:43:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/shared/math.h:14:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/shared/math/acos.h:13:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/math/acos.h:18:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/sqrt.h:15:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/generic/sqrt.h:16:
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/cast.h:57:18: error: shift count is negative [-Werror,-Wshift-count-negative]
57 |           x_mant >>= InFPBits::FRACTION_LEN - OutFPBits::FRACTION_LEN;
|                  ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/ManipulationFunctions.h:229:7: note: in instantiation of function template specialization '__llvm_libc_apfloat::fputil::cast<long double, __llvm_libc_apfloat::fputil::BFloat16>' requested here
229 |   if (cast<U>(from) == to)
|       ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/math/nexttowardbf16.h:22:18: note: in instantiation of function template specialization '__llvm_libc_apfloat::fputil::nextafter<__llvm_libc_apfloat::fputil::BFloat16, long double, 0>' requested here
22 |   return fputil::nextafter(x, y);
|                  ^
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/APFloat.cpp:43:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/shared/math.h:14:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/shared/math/acos.h:13:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/math/acos.h:18:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/sqrt.h:15:
In file included from /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/generic/sqrt.h:16:
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/cast.h:57:18: error: shift count is negative [-Werror,-Wshift-count-negative]
57 |           x_mant >>= InFPBits::FRACTION_LEN - OutFPBits::FRACTION_LEN;
|                  ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/FPUtil/ManipulationFunctions.h:229:7: note: in instantiation of function template specialization '__llvm_libc_apfloat::fputil::cast<long double, _Float16>' requested here
229 |   if (cast<U>(from) == to)
|       ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/../libc/src/__support/math/nexttowardf16.h:26:18: note: in instantiation of function template specialization '__llvm_libc_apfloat::fputil::nextafter<_Float16, long double, 0>' requested here
26 |   return fputil::nextafter(x, y);
|                  ^
6 errors generated.
```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

https://github.com/llvm/llvm-project/pull/206450


More information about the libc-commits mailing list