vitalybuka wrote:

> @kstoimenov @vitalybuka Could you folks show us how the sanitizer builds you 
> run are different from the ones we already run in our CI pipeline? It would 
> be important to align both since we often run into issues with your 
> post-commit CI jobs failing but our pre-commit CI not catching it.

We have many of them:
1. This one is from 
https://github.com/llvm/llvm-project/blob/main/compiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh,
 which is strange build for `cmake -DCOMPILER_RT_ENABLE_INTERNAL_SYMBOLIZER=ON`
This build is strange, but I don't remember it breaks libc++ before. I don't 
think it worse having it on pre-submit.

2. Then a bunch of 
https://lab.llvm.org/buildbot/#/builders/sanitizer-{x86_64,aarch64}-linux-bootstrap-{asan,msan,ubsan,hwasan}/

```
/usr/bin/cmake -DLLVM_APPEND_VC_REV=OFF -GNinja -DCMAKE_BUILD_TYPE=Release 
-DLLVM_CCACHE_BUILD=ON -DLLVM_USE_LINKER=lld -DLLVM_ENABLE_ASSERTIONS=ON 
-DCMAKE_C_COMPILER=/home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build0/bin/clang
 
-DCMAKE_CXX_COMPILER=/home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build0/bin/clang++
 -DLIBCXXABI_USE_LLVM_UNWINDER=OFF 
-DCMAKE_INSTALL_PREFIX=/home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/libcxx_install_ubsan
 '-DLLVM_ENABLE_RUNTIMES=libcxx;libcxxabi' 
-DLIBCXX_TEST_PARAMS=long_tests=False -DLIBCXX_INCLUDE_BENCHMARKS=OFF 
-DLLVM_USE_SANITIZER=Undefined '-DCMAKE_C_FLAGS=-fsanitize=undefined 
-fno-sanitize-recover=all   -fno-sanitize=vptr' 
'-DCMAKE_CXX_FLAGS=-fsanitize=undefined -fno-sanitize-recover=all   
-fno-sanitize=vptr' 
/home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/../runtimes--
```

These must be very close to what libc++ have in CI.
Main diff is that we repeat sanitizers in -DCMAKE_CXX_FLAGS.

The most important part of this build is instrumented libc++ used  for 2nd 
stage clang build. But it's very slow. I don't expect we can afford this on 
pre-commit CI.

3. For some sanitizers there is nested libcxx build 
https://github.com/search?q=repo%3Allvm%2Fllvm-project%20add_custom_libcxx&type=code
correctly configured "check-compiler-rt" should cover them. I suspect you don't 
have these on pre-commit, maybe it worse having them.

https://github.com/llvm/llvm-project/pull/115380
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to