[libc-commits] [libc] [libc][stdfix] Implement fixed point bitsfx functions in llvm libc (PR #128413)
via libc-commits
libc-commits at lists.llvm.org
Wed Feb 26 06:57:02 PST 2025
lntue wrote:
> ```
> FAILED: libc/test/src/stdfix/libc.test.src.stdfix.bitshr_test.__unit__.__build__
> : && /home/krishna/OpenSource/llvm-project/build/bin/clang++ --target=x86_64-unknown-linux-gnu -fPIC -fno-semantic-interposition -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 -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -fuse-ld=lld -Wl,--color-diagnostics -fpie -ffixed-point -Wimplicit-fallthrough -Wwrite-strings -Wno-c99-extensions -Wno-gnu-imaginary-constant -Wno-pedantic -Wstrict-prototypes -Wextra-semi -Wnewline-eof -Wnonportable-system-include-path -Wthread-safety -Xlinker --dependency-file=libc/test/src/stdfix/CMakeFiles/libc.test.src.stdfix.bitshr_test.__unit__.__build__.dir/link.d libc/test/src/stdfix/CMakeFiles/libc.test.src.stdfix.bitshr_test.__unit__.__build__.dir/bitshr_test.cpp.o -o libc/test/src/stdfix/libc.test.src.stdfix.bitshr_test.__unit__.__build__ libc/src/stdfix/CMakeFiles/libc.src.stdfix.bitshr.__internal__.dir/./bitshr.cpp.o libc/src/errno/CMakeFiles/libc.src.errno.errno.__internal__.dir/./libc_errno.cpp.o libc/src/__support/StringUtil/CMakeFiles/libc.src.__support.StringUtil.error_to_string.dir/./error_to_string.cpp.o libc/src/__support/OSUtil/linux/CMakeFiles/libc.src.__support.OSUtil.linux.linux_util.dir/./exit.cpp.o libc/src/__support/OSUtil/linux/CMakeFiles/libc.src.__support.OSUtil.linux.linux_util.dir/./fcntl.cpp.o libc/test/UnitTest/libLibcDeathTestExecutors.unit.a libc/test/UnitTest/libLibcTest.unit.a && :
> ld.lld: error: undefined hidden symbol: bool __llvm_libc_21_0_0_git::testing::internal::test<signed char>(__llvm_libc_21_0_0_git::testing::internal::RunContext*, __llvm_libc_21_0_0_git::testing::TestCond, signed char, signed char, char const*, char const*, __llvm_libc_21_0_0_git::testing::internal::Location)
> >>> referenced by bitshr_test.cpp
> >>> libc/test/src/stdfix/CMakeFiles/libc.test.src.stdfix.bitshr_test.__unit__.__build__.dir/bitshr_test.cpp.o:(LlvmLibcBitshrTest_SpecialNumbers::Run())
> >>> referenced by bitshr_test.cpp
> >>> libc/test/src/stdfix/CMakeFiles/libc.test.src.stdfix.bitshr_test.__unit__.__build__.dir/bitshr_test.cpp.o:(LlvmLibcBitshrTest_SpecialNumbers::Run())
> >>> referenced by bitshr_test.cpp
> >>> libc/test/src/stdfix/CMakeFiles/libc.test.src.stdfix.bitshr_test.__unit__.__build__.dir/bitshr_test.cpp.o:(LlvmLibcBitshrTest_SpecialNumbers::Run())
> >>> referenced 3 more times
> >>> did you mean: bool __llvm_libc_21_0_0_git::testing::internal::test<bool>(__llvm_libc_21_0_0_git::testing::internal::RunContext*, __llvm_libc_21_0_0_git::testing::TestCond, bool, bool, char const*, char const*, __llvm_libc_21_0_0_git::testing::internal::Location)
> >>> defined in: libc/test/UnitTest/libLibcTest.unit.a(LibcTest.cpp.o)
> clang++: error: linker command failed with exit code 1 (use -v to see invocation)
> ```
>
> this is the exact failure for `int_hr_t` (`short fract`)
You might need to add `signed char` to this list of speciallizations https://github.com/llvm/llvm-project/blob/main/libc/test/UnitTest/LibcTest.cpp#L220
https://github.com/llvm/llvm-project/pull/128413
More information about the libc-commits
mailing list