[libc-commits] [libc] [libc][math][c++23] Add fabsbf16 math function (PR #148398)

LLVM Continuous Integration via libc-commits libc-commits at lists.llvm.org
Tue Jul 29 09:32:36 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `libc-riscv64-debian-fullbuild-dbg` running on `libc-riscv64-debian` while building `libc` at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/183/builds/16613

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[ RUN      ] LlvmLibcPlatformFileTest.CreateAppendSeekAndReadBack
[       OK ] LlvmLibcPlatformFileTest.CreateAppendSeekAndReadBack (217 us)
[ RUN      ] LlvmLibcPlatformFileTest.LargeFile
[       OK ] LlvmLibcPlatformFileTest.LargeFile (569 us)
[ RUN      ] LlvmLibcPlatformFileTest.ReadSeekCurAndRead
[       OK ] LlvmLibcPlatformFileTest.ReadSeekCurAndRead (181 us)
[ RUN      ] LlvmLibcPlatformFileTest.IncorrectOperation
[       OK ] LlvmLibcPlatformFileTest.IncorrectOperation (95 us)
Ran 7 tests.  PASS: 7  FAIL: 0
[37/1090] Building CXX object libc/src/math/generic/CMakeFiles/libc.src.math.generic.fabsbf16.__internal__.dir/fabsbf16.cpp.o
FAILED: libc/src/math/generic/CMakeFiles/libc.src.math.generic.fabsbf16.__internal__.dir/fabsbf16.cpp.o 
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc -isystem /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -DLIBC_ERRNO_MODE=LIBC_ERRNO_MODE_DEFAULT -fpie -ffreestanding -DLIBC_FULL_BUILD -nostdlibinc -idirafter/usr/include -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -std=gnu++17 -MD -MT libc/src/math/generic/CMakeFiles/libc.src.math.generic.fabsbf16.__internal__.dir/fabsbf16.cpp.o -MF libc/src/math/generic/CMakeFiles/libc.src.math.generic.fabsbf16.__internal__.dir/fabsbf16.cpp.o.d -o libc/src/math/generic/CMakeFiles/libc.src.math.generic.fabsbf16.__internal__.dir/fabsbf16.cpp.o -c /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/math/generic/fabsbf16.cpp
In file included from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/math/generic/fabsbf16.cpp:12:
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/FPUtil/bfloat16.h:31:56: error: inline function '__llvm_libc_20_0_0_git::fputil::BFloat16::BFloat16<float>' is not defined [-Werror,-Wundefined-inline]
  template <typename T> LIBC_INLINE constexpr explicit BFloat16(T value) {
                                                       ^
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/FPUtil/cast.h:71:10: note: used here
  return static_cast<OutType>(x);
         ^
1 error generated.
[38/1090] Running unit test libc.test.src.__support.OSUtil.linux.vdso_test.__unit__
[==========] Running 9 tests from 1 test suite.
[ RUN      ] LlvmLibcOSUtilVDSOTest.GetTimeOfDay
[       OK ] LlvmLibcOSUtilVDSOTest.GetTimeOfDay (149 us)
[ RUN      ] LlvmLibcOSUtilVDSOTest.Time
[       OK ] LlvmLibcOSUtilVDSOTest.Time (2 us)
[ RUN      ] LlvmLibcOSUtilVDSOTest.ClockGetTime
[       OK ] LlvmLibcOSUtilVDSOTest.ClockGetTime (5 us)
[ RUN      ] LlvmLibcOSUtilVDSOTest.ClockGetTime64
[       OK ] LlvmLibcOSUtilVDSOTest.ClockGetTime64 (3 us)
[ RUN      ] LlvmLibcOSUtilVDSOTest.ClockGetRes
[       OK ] LlvmLibcOSUtilVDSOTest.ClockGetRes (4 us)
[ RUN      ] LlvmLibcOSUtilVDSOTest.GetCpu
[       OK ] LlvmLibcOSUtilVDSOTest.GetCpu (6 us)
[ RUN      ] LlvmLibcOSUtilVDSOTest.RtSigReturn
[       OK ] LlvmLibcOSUtilVDSOTest.RtSigReturn (30 us)
[ RUN      ] LlvmLibcOSUtilVDSOTest.FlushICache
[       OK ] LlvmLibcOSUtilVDSOTest.FlushICache (6 us)
[ RUN      ] LlvmLibcOSUtilVDSOTest.RiscvHwProbe
[       OK ] LlvmLibcOSUtilVDSOTest.RiscvHwProbe (3 us)
Ran 9 tests.  PASS: 9  FAIL: 0
[39/1090] Building CXX object libc/src/math/generic/CMakeFiles/libc.src.math.generic.fabsbf16.dir/fabsbf16.cpp.o
FAILED: libc/src/math/generic/CMakeFiles/libc.src.math.generic.fabsbf16.dir/fabsbf16.cpp.o 
/usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc -isystem /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -fdiagnostics-color -g -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -DLIBC_ERRNO_MODE=LIBC_ERRNO_MODE_DEFAULT -fpie -ffreestanding -DLIBC_FULL_BUILD -nostdlibinc -idirafter/usr/include -fno-builtin -fno-exceptions -fno-lax-vector-conversions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -ftrivial-auto-var-init=pattern -fno-omit-frame-pointer -Wall -Wextra -Werror -Wconversion -Wno-sign-conversion -Wdeprecated -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wimplicit-fallthrough -Wwrite-strings -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wstrict-prototypes -Wthread-safety -Wglobal-constructors -DLIBC_COPT_PUBLIC_PACKAGING -std=gnu++17 -MD -MT libc/src/math/generic/CMakeFiles/libc.src.math.generic.fabsbf16.dir/fabsbf16.cpp.o -MF libc/src/math/generic/CMakeFiles/libc.src.math.generic.fabsbf16.dir/fabsbf16.cpp.o.d -o libc/src/math/generic/CMakeFiles/libc.src.math.generic.fabsbf16.dir/fabsbf16.cpp.o -c /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/math/generic/fabsbf16.cpp
In file included from /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/math/generic/fabsbf16.cpp:12:
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/FPUtil/bfloat16.h:31:56: error: inline function '__llvm_libc_20_0_0_git::fputil::BFloat16::BFloat16<float>' is not defined [-Werror,-Wundefined-inline]
  template <typename T> LIBC_INLINE constexpr explicit BFloat16(T value) {
                                                       ^
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/FPUtil/cast.h:71:10: note: used here

```

</details>

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


More information about the libc-commits mailing list