[clang] Thread Safety Analysis: Add more cast pointer-alias tests (PR #172638)

LLVM Continuous Integration via cfe-commits cfe-commits at lists.llvm.org
Wed Dec 17 06:07:50 PST 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `sanitizer-x86_64-linux-fast` running on `sanitizer-buildbot4` while building `clang` at step 2 "annotate".

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

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

```
Step 2 (annotate) failure: 'python ../sanitizer_buildbot/sanitizers/zorg/buildbot/builders/sanitizers/buildbot_selector.py' (failure)
...
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:564: note: using lld-link: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:564: note: using ld64.lld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:564: note: using wasm-ld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:564: note: using ld.lld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:564: note: using lld-link: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:564: note: using ld64.lld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:564: note: using wasm-ld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/main.py:74: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 94680 tests, 64 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70
FAIL: LLVM :: ExecutionEngine/OrcLazy/global-ctors-and-dtors.ll (23785 of 94680)
******************** TEST 'LLVM :: ExecutionEngine/OrcLazy/global-ctors-and-dtors.ll' FAILED ********************
Exit Code: 2

Command Output (stdout):
--
# RUN: at line 3
/home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lli -jit-kind=orc-lazy -orc-lazy-debug=funcs-to-stdout -extra-module /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/ExecutionEngine/OrcLazy/global-ctors-and-dtors.ll    /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/ExecutionEngine/OrcLazy/Inputs/noop-main.ll | /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/FileCheck /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/ExecutionEngine/OrcLazy/global-ctors-and-dtors.ll
# executed command: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lli -jit-kind=orc-lazy -orc-lazy-debug=funcs-to-stdout -extra-module /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/ExecutionEngine/OrcLazy/global-ctors-and-dtors.ll /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/ExecutionEngine/OrcLazy/Inputs/noop-main.ll
# .---command stderr------------
# | Expected<T> must be checked before access or destruction.
# | Expected<T> value was in success state. (Note: Expected<T> values in success mode must still be checked prior to being destroyed).
# | PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and instructions to reproduce the bug.
# | Stack dump:
# | 0.	Program arguments: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lli -jit-kind=orc-lazy -orc-lazy-debug=funcs-to-stdout -extra-module /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/ExecutionEngine/OrcLazy/global-ctors-and-dtors.ll /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/ExecutionEngine/OrcLazy/Inputs/noop-main.ll
# |  #0 0x00006095bb7cfba6 ___interceptor_backtrace /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:4530:13
# |  #1 0x00006095be80f958 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Support/Unix/Signals.inc:842:13
# |  #2 0x00006095be809379 llvm::sys::RunSignalHandlers() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Support/Signals.cpp:0:5
# |  #3 0x00006095be81186e SignalHandler(int, siginfo_t*, void*) /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Support/Unix/Signals.inc:429:38
# |  #4 0x0000781e6e0458d0 (/lib/x86_64-linux-gnu/libc.so.6+0x458d0)
# |  #5 0x0000781e6e0a49bc pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0xa49bc)
# |  #6 0x0000781e6e04579e raise (/lib/x86_64-linux-gnu/libc.so.6+0x4579e)
# |  #7 0x0000781e6e0288cd abort (/lib/x86_64-linux-gnu/libc.so.6+0x288cd)
# |  #8 0x00006095bdc5220f operator<< /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/Support/raw_ostream.h:234:7
# |  #9 0x00006095bdc5220f operator<< /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/Support/raw_ostream.h:258:18
# | #10 0x00006095bdc5220f llvm::Expected<llvm::orc::ExecutorAddrRange>::fatalUncheckedExpected() const /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/Support/Error.h:716:14
# | #11 0x00006095bdc5201c assertIsChecked /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/Support/Error.h:730:7
# | #12 0x00006095bdc5201c ~Expected /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/Support/Error.h:566:5
# | #13 0x00006095bdc5201c std::__1::__assoc_state<llvm::MSVCPExpected<llvm::orc::ExecutorAddrRange>>::__on_zero_shared() /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/future:607:56
# | #14 0x00006095bdc52eee std::__1::promise<llvm::MSVCPExpected<llvm::orc::ExecutorAddrRange>>::~promise() /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/future:1175:1
# | #15 0x00006095bdc528eb llvm::orc::DebugObject::~DebugObject() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/ExecutionEngine/Orc/Debugging/ELFDebugObjectPlugin.cpp:67:3
# | #16 0x00006095bdc5712d operator() /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/__memory/unique_ptr.h:74:5
# | #17 0x00006095bdc5712d reset /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/__memory/unique_ptr.h:288:7
# | #18 0x00006095bdc5712d ~unique_ptr /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/__memory/unique_ptr.h:254:71
# | #19 0x00006095bdc5712d ~pair /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/__utility/pair.h:88:8
# | #20 0x00006095bdc5712d __destroy_at<std::__1::pair<llvm::orc::MaterializationResponsibility *const, std::__1::unique_ptr<llvm::orc::DebugObject, std::__1::default_delete<llvm::orc::DebugObject> > > > /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/__memory/construct_at.h:67:13
# | #21 0x00006095bdc5712d destroy<std::__1::pair<llvm::orc::MaterializationResponsibility *const, std::__1::unique_ptr<llvm::orc::DebugObject, std::__1::default_delete<llvm::orc::DebugObject> > >, 0> /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/__memory/allocator_traits.h:313:5
# | #22 0x00006095bdc5712d std::__1::__tree<std::__1::__value_type<llvm::orc::MaterializationResponsibility*, std::__1::unique_ptr<llvm::orc::DebugObject, std::__1::default_delete<llvm::orc::DebugObject>>>, std::__1::__map_value_compare<llvm::orc::MaterializationResponsibility*, std::__1::pair<llvm::orc::MaterializationResponsibility* const, std::__1::unique_ptr<llvm::orc::DebugObject, std::__1::default_delete<llvm::orc::DebugObject>>>, std::__1::less<llvm::orc::MaterializationResponsibility*>>, std::__1::allocator<std::__1::pair<llvm::orc::MaterializationResponsibility* const, std::__1::unique_ptr<llvm::orc::DebugObject, std::__1::default_delete<llvm::orc::DebugObject>>>>>::erase(std::__1::__tree_const_iterator<std::__1::__value_type<llvm::orc::MaterializationResponsibility*, std::__1::unique_ptr<llvm::orc::DebugObject, std::__1::default_delete<llvm::orc::DebugObject>>>, std::__1::__tree_node<std::__1::__value_type<llvm::orc::MaterializationResponsibility*, std::__1::unique_ptr<llvm::orc::DebugObject, std::__1::default_delete<llvm::orc::DebugObject>>>, void*>*, long>) /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/__tree:2056:3
# | #23 0x00006095bdc4bacf llvm::orc::ELFDebugObjectPlugin::notifyFailed(llvm::orc::MaterializationResponsibility&) /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/ExecutionEngine/Orc/Debugging/ELFDebugObjectPlugin.cpp:352:3
Step 10 (stage2/asan_ubsan check) failure: stage2/asan_ubsan check (failure)
...
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:564: note: using lld-link: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:564: note: using ld64.lld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:564: note: using wasm-ld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:564: note: using ld.lld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:564: note: using lld-link: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:564: note: using ld64.lld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:564: note: using wasm-ld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/main.py:74: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 94680 tests, 64 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70
FAIL: LLVM :: ExecutionEngine/OrcLazy/global-ctors-and-dtors.ll (23785 of 94680)
******************** TEST 'LLVM :: ExecutionEngine/OrcLazy/global-ctors-and-dtors.ll' FAILED ********************
Exit Code: 2

Command Output (stdout):
--
# RUN: at line 3
/home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lli -jit-kind=orc-lazy -orc-lazy-debug=funcs-to-stdout -extra-module /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/ExecutionEngine/OrcLazy/global-ctors-and-dtors.ll    /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/ExecutionEngine/OrcLazy/Inputs/noop-main.ll | /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/FileCheck /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/ExecutionEngine/OrcLazy/global-ctors-and-dtors.ll
# executed command: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lli -jit-kind=orc-lazy -orc-lazy-debug=funcs-to-stdout -extra-module /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/ExecutionEngine/OrcLazy/global-ctors-and-dtors.ll /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/ExecutionEngine/OrcLazy/Inputs/noop-main.ll
# .---command stderr------------
# | Expected<T> must be checked before access or destruction.
# | Expected<T> value was in success state. (Note: Expected<T> values in success mode must still be checked prior to being destroyed).
# | PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and instructions to reproduce the bug.
# | Stack dump:
# | 0.	Program arguments: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lli -jit-kind=orc-lazy -orc-lazy-debug=funcs-to-stdout -extra-module /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/ExecutionEngine/OrcLazy/global-ctors-and-dtors.ll /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/ExecutionEngine/OrcLazy/Inputs/noop-main.ll
# |  #0 0x00006095bb7cfba6 ___interceptor_backtrace /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:4530:13
# |  #1 0x00006095be80f958 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Support/Unix/Signals.inc:842:13
# |  #2 0x00006095be809379 llvm::sys::RunSignalHandlers() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Support/Signals.cpp:0:5
# |  #3 0x00006095be81186e SignalHandler(int, siginfo_t*, void*) /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Support/Unix/Signals.inc:429:38
# |  #4 0x0000781e6e0458d0 (/lib/x86_64-linux-gnu/libc.so.6+0x458d0)
# |  #5 0x0000781e6e0a49bc pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0xa49bc)
# |  #6 0x0000781e6e04579e raise (/lib/x86_64-linux-gnu/libc.so.6+0x4579e)
# |  #7 0x0000781e6e0288cd abort (/lib/x86_64-linux-gnu/libc.so.6+0x288cd)
# |  #8 0x00006095bdc5220f operator<< /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/Support/raw_ostream.h:234:7
# |  #9 0x00006095bdc5220f operator<< /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/Support/raw_ostream.h:258:18
# | #10 0x00006095bdc5220f llvm::Expected<llvm::orc::ExecutorAddrRange>::fatalUncheckedExpected() const /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/Support/Error.h:716:14
# | #11 0x00006095bdc5201c assertIsChecked /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/Support/Error.h:730:7
# | #12 0x00006095bdc5201c ~Expected /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/Support/Error.h:566:5
# | #13 0x00006095bdc5201c std::__1::__assoc_state<llvm::MSVCPExpected<llvm::orc::ExecutorAddrRange>>::__on_zero_shared() /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/future:607:56
# | #14 0x00006095bdc52eee std::__1::promise<llvm::MSVCPExpected<llvm::orc::ExecutorAddrRange>>::~promise() /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/future:1175:1
# | #15 0x00006095bdc528eb llvm::orc::DebugObject::~DebugObject() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/ExecutionEngine/Orc/Debugging/ELFDebugObjectPlugin.cpp:67:3
# | #16 0x00006095bdc5712d operator() /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/__memory/unique_ptr.h:74:5
# | #17 0x00006095bdc5712d reset /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/__memory/unique_ptr.h:288:7
# | #18 0x00006095bdc5712d ~unique_ptr /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/__memory/unique_ptr.h:254:71
# | #19 0x00006095bdc5712d ~pair /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/__utility/pair.h:88:8
# | #20 0x00006095bdc5712d __destroy_at<std::__1::pair<llvm::orc::MaterializationResponsibility *const, std::__1::unique_ptr<llvm::orc::DebugObject, std::__1::default_delete<llvm::orc::DebugObject> > > > /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/__memory/construct_at.h:67:13
# | #21 0x00006095bdc5712d destroy<std::__1::pair<llvm::orc::MaterializationResponsibility *const, std::__1::unique_ptr<llvm::orc::DebugObject, std::__1::default_delete<llvm::orc::DebugObject> > >, 0> /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/__memory/allocator_traits.h:313:5
# | #22 0x00006095bdc5712d std::__1::__tree<std::__1::__value_type<llvm::orc::MaterializationResponsibility*, std::__1::unique_ptr<llvm::orc::DebugObject, std::__1::default_delete<llvm::orc::DebugObject>>>, std::__1::__map_value_compare<llvm::orc::MaterializationResponsibility*, std::__1::pair<llvm::orc::MaterializationResponsibility* const, std::__1::unique_ptr<llvm::orc::DebugObject, std::__1::default_delete<llvm::orc::DebugObject>>>, std::__1::less<llvm::orc::MaterializationResponsibility*>>, std::__1::allocator<std::__1::pair<llvm::orc::MaterializationResponsibility* const, std::__1::unique_ptr<llvm::orc::DebugObject, std::__1::default_delete<llvm::orc::DebugObject>>>>>::erase(std::__1::__tree_const_iterator<std::__1::__value_type<llvm::orc::MaterializationResponsibility*, std::__1::unique_ptr<llvm::orc::DebugObject, std::__1::default_delete<llvm::orc::DebugObject>>>, std::__1::__tree_node<std::__1::__value_type<llvm::orc::MaterializationResponsibility*, std::__1::unique_ptr<llvm::orc::DebugObject, std::__1::default_delete<llvm::orc::DebugObject>>>, void*>*, long>) /home/b/sanitizer-x86_64-linux-fast/build/libcxx_install_asan_ubsan/include/c++/v1/__tree:2056:3
# | #23 0x00006095bdc4bacf llvm::orc::ELFDebugObjectPlugin::notifyFailed(llvm::orc::MaterializationResponsibility&) /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/ExecutionEngine/Orc/Debugging/ELFDebugObjectPlugin.cpp:352:3

```

</details>

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


More information about the cfe-commits mailing list