Merge bitcoin/bitcoin#35448: ci: don't build libunwind in msan

087f02c929 ci: skip libunwind runtime in LLVM build (fanquake)
6d47f7cc6f ci: use llvm 22.1.7 (fanquake)

Pull request description:

  Also document why we use `LIBCXXABI_USE_LLVM_UNWINDER=OFF`. Upstream issue is https://github.com/llvm/llvm-project/issues/84348.

ACKs for top commit:
  maflcko:
    lgtm ACK 087f02c929
  sedited:
    ACK 087f02c929

Tree-SHA512: b93c798fd5a016cad40db9d24cb36cb72e531b284aee5458de41e062960514783e30c6f1413c0e62fa261758d783d0004a0973541cbb36bd34b77800c629bd7a
This commit is contained in:
merge-script
2026-06-09 14:09:19 +02:00

View File

@@ -62,10 +62,13 @@ if [ -n "$PIP_PACKAGES" ]; then
fi
if [[ -n "${USE_INSTRUMENTED_LIBCPP}" ]]; then
${CI_RETRY_EXE} git clone --depth=1 https://github.com/llvm/llvm-project -b "llvmorg-22.1.3" /llvm-project
${CI_RETRY_EXE} git clone --depth=1 https://github.com/llvm/llvm-project -b "llvmorg-22.1.7" /llvm-project
# LLVM is configured with LIBCXXABI_USE_LLVM_UNWINDER=OFF,
# because libunwind doesn't handle exceptions under MSAN.
# https://github.com/llvm/llvm-project/issues/84348
cmake -G Ninja -B /cxx_build/ \
-DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi;libunwind" \
-DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi" \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_USE_SANITIZER="${USE_INSTRUMENTED_LIBCPP}" \
-DCMAKE_C_COMPILER=clang \