[libcxx-commits] [libcxx] [libcxx][libc] update LLVM-libc test status (PR #201236)

Alexey Samsonov via libcxx-commits libcxx-commits at lists.llvm.org
Wed Jul 1 14:49:39 PDT 2026


================
@@ -10,7 +10,7 @@ config.substitutions.append(('%{compile_flags}',
     '-nostdlibinc -I %{include-dir} -I %{target-include-dir} -isystem @CMAKE_BINARY_DIR@/libc/include -I %{libcxx-dir}/test/support -idirafter @LIBC_KERNEL_HEADERS@'
 ))
 config.substitutions.append(('%{link_flags}',
-    '-nodefaultlibs -nostartfiles -L %{lib-dir} -lc++ -lc++abi @CMAKE_BINARY_DIR@/libc/startup/linux/crt1.o @CMAKE_BINARY_DIR@/libc/lib/libc.a @CMAKE_BINARY_DIR@/libc/lib/libm.a -static -fno-use-cxa-atexit @CMAKE_BINARY_DIR@/compiler-rt/lib/linux/libclang_rt.builtins-x86_64.a'
+    '-nodefaultlibs -nostartfiles -L %{lib-dir} -lc++ -lc++abi @CMAKE_BINARY_DIR@/libc/startup/linux/crt1.o -Wl,--start-group @CMAKE_BINARY_DIR@/libc/lib/libc.a @CMAKE_BINARY_DIR@/libc/lib/libm.a -static -fno-use-cxa-atexit @CMAKE_BINARY_DIR@/compiler-rt/lib/linux/libclang_rt.builtins-x86_64.a -latomic -Wl,--end-group -Wl,--defsym,__dso_handle=0'
----------------
vonosmas wrote:

```
  # | /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/13/libatomic.a(gstore.o): in function `libat_store':
  # | (.text+0x127): undefined reference to `__memcpy_chk'
  # | clang++-23: error: linker command failed with exit code 1 (use -v to see invocation)
```

Looks like there are some issues from using GCC version of libatomic (I suspect, pulled by `-latomic`). I wonder why do you need this, instead of using atomic functionality from compiler-rt builtins? Here you link with the builtins for x86 explicitly, but wouldn't smth like `--rtlib=compiler-rt` to Clang driver achieve the same result?

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


More information about the libcxx-commits mailing list