[llvm] [BranchFolding] Kill common hoisted debug instructions (PR #149999)
LLVM Continuous Integration via llvm-commits
llvm-commits at lists.llvm.org
Fri Jul 25 08:01:24 PDT 2025
llvm-ci wrote:
LLVM Buildbot has detected a new failure on builder `sanitizer-x86_64-linux-qemu` running on `sanitizer-buildbot4` while building `llvm` at step 2 "annotate".
Full details are available at: https://lab.llvm.org/buildbot/#/builders/139/builds/17622
<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)
...
[30/43] Building CXX object lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-dynamic-powerpc64le.dir/string_utils.cpp.o
[31/43] Building CXX object lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-dynamic-powerpc64le.dir/linux.cpp.o
[32/43] Building CXX object lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-dynamic-powerpc64le.dir/timing.cpp.o
[33/43] Building CXX object lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone_cxx-powerpc64le.dir/wrappers_cpp.cpp.o
[34/43] Linking CXX static library lib/linux/libclang_rt.scudo_standalone_cxx-powerpc64le.a
[35/43] cd /home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_powerpc64le_qemu/lib/scudo/standalone && /usr/bin/cmake -DCMAKE_INSTALL_COMPONENT=clang_rt.scudo_standalone_cxx-powerpc64le -P /home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_powerpc64le_qemu/cmake_install.cmake
-- Install configuration: "Release"
-- Installing: /home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/lib/clang/22/lib/linux/libclang_rt.scudo_standalone_cxx-powerpc64le.a
[36/43] Building CXX object lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-dynamic-powerpc64le.dir/wrappers_cpp.cpp.o
[37/43] Building CXX object lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o
FAILED: lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o
/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang++ --target=powerpc64le-linux-gnu -I/home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/lib/scudo/standalone/../.. -I/home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/lib/scudo/standalone/include -fPIC -Wall -Wno-unused-parameter -O3 -DNDEBUG -std=c++17 -fno-function-sections -fno-lto -Werror=conversion -Wall -Wextra -pedantic -g -nostdinc++ -fvisibility=hidden -fno-exceptions -Wno-pedantic -O3 -Werror=thread-safety -MD -MT lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o -MF lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o.d -o lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o -c /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/lib/scudo/standalone/wrappers_c.cpp
clang++: /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/llvm/include/llvm/ADT/ilist_iterator.h:168: reference llvm::ilist_iterator<llvm::ilist_detail::node_options<llvm::MachineInstr, true, true, void, false, void>, false, false>::operator*() const [OptionsT = llvm::ilist_detail::node_options<llvm::MachineInstr, true, true, void, false, void>, IsReverse = false, IsConst = false]: Assertion `!NodePtr->isKnownSentinel()' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0. Program arguments: /home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang++ --target=powerpc64le-linux-gnu -I/home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/lib/scudo/standalone/../.. -I/home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/lib/scudo/standalone/include -fPIC -Wall -Wno-unused-parameter -O3 -DNDEBUG -std=c++17 -fno-function-sections -fno-lto -Werror=conversion -Wall -Wextra -pedantic -g -nostdinc++ -fvisibility=hidden -fno-exceptions -Wno-pedantic -O3 -Werror=thread-safety -MD -MT lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o -MF lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o.d -o lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o -c /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/lib/scudo/standalone/wrappers_c.cpp
1. <eof> parser at end of file
2. Code generation
3. Running pass 'Function Pass Manager' on module '/home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/lib/scudo/standalone/wrappers_c.cpp'.
4. Running pass 'Control Flow Optimizer' on function '@malloc_set_add_large_allocation_slack'
#0 0x000063cc6947c718 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x8795718)
#1 0x000063cc69479e35 llvm::sys::RunSignalHandlers() (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x8792e35)
#2 0x000063cc693e19e6 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
#3 0x000074cc84a45250 (/lib/x86_64-linux-gnu/libc.so.6+0x45250)
#4 0x000074cc84aa3f1c pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0xa3f1c)
#5 0x000074cc84a4519e raise (/lib/x86_64-linux-gnu/libc.so.6+0x4519e)
#6 0x000074cc84a28902 abort (/lib/x86_64-linux-gnu/libc.so.6+0x28902)
#7 0x000074cc84a2881e (/lib/x86_64-linux-gnu/libc.so.6+0x2881e)
#8 0x000074cc84a3b7c7 (/lib/x86_64-linux-gnu/libc.so.6+0x3b7c7)
#9 0x000063cc68716ab7 llvm::BranchFolder::HoistCommonCodeInSuccs(llvm::MachineBasicBlock*) BranchFolding.cpp:0:0
#10 0x000063cc6870eae5 llvm::BranchFolder::OptimizeFunction(llvm::MachineFunction&, llvm::TargetInstrInfo const*, llvm::TargetRegisterInfo const*, llvm::MachineLoopInfo*, bool) BranchFolding.cpp:0:0
#11 0x000063cc687184cc (anonymous namespace)::BranchFolderLegacy::runOnMachineFunction(llvm::MachineFunction&) BranchFolding.cpp:0:0
#12 0x000063cc688bdc43 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x7bd6c43)
#13 0x000063cc68e2b2a5 llvm::FPPassManager::runOnFunction(llvm::Function&) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x81442a5)
#14 0x000063cc68e33542 llvm::FPPassManager::runOnModule(llvm::Module&) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x814c542)
#15 0x000063cc68e2bcf6 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x8144cf6)
#16 0x000063cc69bd546f clang::emitBackendOutput(clang::CompilerInstance&, clang::CodeGenOptions&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>, clang::BackendConsumer*) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x8eee46f)
#17 0x000063cc69be73f3 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x8f003f3)
#18 0x000063cc6b612ec9 clang::ParseAST(clang::Sema&, bool, bool) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0xa92bec9)
#19 0x000063cc6a178d66 clang::FrontendAction::Execute() (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x9491d66)
#20 0x000063cc6a0e761d clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x940061d)
#21 0x000063cc6a264f52 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x957df52)
#22 0x000063cc6695a621 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x5c73621)
#23 0x000063cc669564bf ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#24 0x000063cc69f5b489 void llvm::function_ref<void ()>::callback_fn<clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const::$_0>(long) Job.cpp:0:0
#25 0x000063cc693e168e llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x86fa68e)
#26 0x000063cc69f5ab23 clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x9273b23)
#27 0x000063cc69f1c5ec clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x92355ec)
#28 0x000063cc69f1c807 clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x9235807)
Step 17 (scudo powerpc64le_qemu) failure: scudo powerpc64le_qemu (failure)
...
[30/43] Building CXX object lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-dynamic-powerpc64le.dir/string_utils.cpp.o
[31/43] Building CXX object lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-dynamic-powerpc64le.dir/linux.cpp.o
[32/43] Building CXX object lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-dynamic-powerpc64le.dir/timing.cpp.o
[33/43] Building CXX object lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone_cxx-powerpc64le.dir/wrappers_cpp.cpp.o
[34/43] Linking CXX static library lib/linux/libclang_rt.scudo_standalone_cxx-powerpc64le.a
[35/43] cd /home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_powerpc64le_qemu/lib/scudo/standalone && /usr/bin/cmake -DCMAKE_INSTALL_COMPONENT=clang_rt.scudo_standalone_cxx-powerpc64le -P /home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_powerpc64le_qemu/cmake_install.cmake
-- Install configuration: "Release"
-- Installing: /home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/lib/clang/22/lib/linux/libclang_rt.scudo_standalone_cxx-powerpc64le.a
[36/43] Building CXX object lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-dynamic-powerpc64le.dir/wrappers_cpp.cpp.o
[37/43] Building CXX object lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o
FAILED: lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o
/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang++ --target=powerpc64le-linux-gnu -I/home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/lib/scudo/standalone/../.. -I/home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/lib/scudo/standalone/include -fPIC -Wall -Wno-unused-parameter -O3 -DNDEBUG -std=c++17 -fno-function-sections -fno-lto -Werror=conversion -Wall -Wextra -pedantic -g -nostdinc++ -fvisibility=hidden -fno-exceptions -Wno-pedantic -O3 -Werror=thread-safety -MD -MT lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o -MF lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o.d -o lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o -c /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/lib/scudo/standalone/wrappers_c.cpp
clang++: /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/llvm/include/llvm/ADT/ilist_iterator.h:168: reference llvm::ilist_iterator<llvm::ilist_detail::node_options<llvm::MachineInstr, true, true, void, false, void>, false, false>::operator*() const [OptionsT = llvm::ilist_detail::node_options<llvm::MachineInstr, true, true, void, false, void>, IsReverse = false, IsConst = false]: Assertion `!NodePtr->isKnownSentinel()' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0. Program arguments: /home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang++ --target=powerpc64le-linux-gnu -I/home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/lib/scudo/standalone/../.. -I/home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/lib/scudo/standalone/include -fPIC -Wall -Wno-unused-parameter -O3 -DNDEBUG -std=c++17 -fno-function-sections -fno-lto -Werror=conversion -Wall -Wextra -pedantic -g -nostdinc++ -fvisibility=hidden -fno-exceptions -Wno-pedantic -O3 -Werror=thread-safety -MD -MT lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o -MF lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o.d -o lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-powerpc64le.dir/wrappers_c.cpp.o -c /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/lib/scudo/standalone/wrappers_c.cpp
1. <eof> parser at end of file
2. Code generation
3. Running pass 'Function Pass Manager' on module '/home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/lib/scudo/standalone/wrappers_c.cpp'.
4. Running pass 'Control Flow Optimizer' on function '@malloc_set_add_large_allocation_slack'
#0 0x000063cc6947c718 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x8795718)
#1 0x000063cc69479e35 llvm::sys::RunSignalHandlers() (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x8792e35)
#2 0x000063cc693e19e6 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
#3 0x000074cc84a45250 (/lib/x86_64-linux-gnu/libc.so.6+0x45250)
#4 0x000074cc84aa3f1c pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0xa3f1c)
#5 0x000074cc84a4519e raise (/lib/x86_64-linux-gnu/libc.so.6+0x4519e)
#6 0x000074cc84a28902 abort (/lib/x86_64-linux-gnu/libc.so.6+0x28902)
#7 0x000074cc84a2881e (/lib/x86_64-linux-gnu/libc.so.6+0x2881e)
#8 0x000074cc84a3b7c7 (/lib/x86_64-linux-gnu/libc.so.6+0x3b7c7)
#9 0x000063cc68716ab7 llvm::BranchFolder::HoistCommonCodeInSuccs(llvm::MachineBasicBlock*) BranchFolding.cpp:0:0
#10 0x000063cc6870eae5 llvm::BranchFolder::OptimizeFunction(llvm::MachineFunction&, llvm::TargetInstrInfo const*, llvm::TargetRegisterInfo const*, llvm::MachineLoopInfo*, bool) BranchFolding.cpp:0:0
#11 0x000063cc687184cc (anonymous namespace)::BranchFolderLegacy::runOnMachineFunction(llvm::MachineFunction&) BranchFolding.cpp:0:0
#12 0x000063cc688bdc43 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x7bd6c43)
#13 0x000063cc68e2b2a5 llvm::FPPassManager::runOnFunction(llvm::Function&) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x81442a5)
#14 0x000063cc68e33542 llvm::FPPassManager::runOnModule(llvm::Module&) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x814c542)
#15 0x000063cc68e2bcf6 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x8144cf6)
#16 0x000063cc69bd546f clang::emitBackendOutput(clang::CompilerInstance&, clang::CodeGenOptions&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>, clang::BackendConsumer*) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x8eee46f)
#17 0x000063cc69be73f3 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x8f003f3)
#18 0x000063cc6b612ec9 clang::ParseAST(clang::Sema&, bool, bool) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0xa92bec9)
#19 0x000063cc6a178d66 clang::FrontendAction::Execute() (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x9491d66)
#20 0x000063cc6a0e761d clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x940061d)
#21 0x000063cc6a264f52 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x957df52)
#22 0x000063cc6695a621 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x5c73621)
#23 0x000063cc669564bf ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#24 0x000063cc69f5b489 void llvm::function_ref<void ()>::callback_fn<clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const::$_0>(long) Job.cpp:0:0
#25 0x000063cc693e168e llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x86fa68e)
#26 0x000063cc69f5ab23 clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x9273b23)
#27 0x000063cc69f1c5ec clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x92355ec)
#28 0x000063cc69f1c807 clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_host/bin/clang+++0x9235807)
```
</details>
https://github.com/llvm/llvm-project/pull/149999
More information about the llvm-commits
mailing list