[llvm] [GlobalISel] Add a shared matcher for memcpy-family instructions (NFC) (PR #201766)
LLVM Continuous Integration via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 8 00:50:10 PDT 2026
llvm-ci wrote:
LLVM Buildbot has detected a new failure on builder `sanitizer-x86_64-linux-bootstrap-ubsan` running on `sanitizer-buildbot3` while building `llvm` at step 2 "annotate".
Full details are available at: https://lab.llvm.org/buildbot/#/builders/25/builds/18316
<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-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using ld.lld: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using lld-link: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using ld64.lld: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using wasm-ld: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using ld.lld: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using lld-link: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using ld64.lld: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using wasm-ld: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/wasm-ld
-- Testing: 100161 tests, 64 workers --
Testing: 0.. 10.. 20..
FAIL: LLVM :: CodeGen/AArch64/aarch64-mops.ll (30250 of 100161)
******************** TEST 'LLVM :: CodeGen/AArch64/aarch64-mops.ll' FAILED ********************
Exit Code: 2
Command Output (stdout):
--
# RUN: at line 3
/home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/llc /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/CodeGen/AArch64/aarch64-mops.ll -o - -mtriple=aarch64 -O0 -global-isel=1 -global-isel-abort=1 | /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/FileCheck /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/CodeGen/AArch64/aarch64-mops.ll --check-prefixes=GISel-WITHOUT-MOPS,GISel-WITHOUT-MOPS-O0
# executed command: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/llc /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/CodeGen/AArch64/aarch64-mops.ll -o - -mtriple=aarch64 -O0 -global-isel=1 -global-isel-abort=1
# .---command stderr------------
# | 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-bootstrap-ubsan/build/llvm_build_ubsan/bin/llc /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/CodeGen/AArch64/aarch64-mops.ll -o - -mtriple=aarch64 -O0 -global-isel=1 -global-isel-abort=1
# | 1. Running pass 'Function Pass Manager' on module '/home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/CodeGen/AArch64/aarch64-mops.ll'.
# | 2. Running pass 'AArch64O0PreLegalizerCombiner' on function '@memset_0_zeroval'
# | #0 0x000062da87c8489e llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/Support/Unix/Signals.inc:881:13
# | #1 0x000062da87c81996 llvm::sys::RunSignalHandlers() /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/Support/Signals.cpp:109:18
# | #2 0x000062da87c85de8 SignalHandler(int, siginfo_t*, void*) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/Support/Unix/Signals.inc:448:38
# | #3 0x000079d70ea47e10 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x47e10)
# | #4 0x000079d70eaae3ec pthread_kill (/usr/lib/x86_64-linux-gnu/libc.so.6+0xae3ec)
# | #5 0x000079d70ea47cde raise (/usr/lib/x86_64-linux-gnu/libc.so.6+0x47cde)
# | #6 0x000079d70ea288ec abort (/usr/lib/x86_64-linux-gnu/libc.so.6+0x288ec)
# | #7 0x000062da830971fc (/home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/llc+0x7d491fc)
# | #8 0x000062da8309511e __sanitizer::Die() /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_termination.cpp:52:5
# | #9 0x000062da830a9009 (/home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/llc+0x7d5b009)
# | #10 0x000062da88724be5 llvm::LegalizerHelper::lowerMemCpyFamily(llvm::MachineInstr&, unsigned int) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp:11046:40
# | #11 0x000062da88646cb2 llvm::CombinerHelper::tryCombineMemCpyFamily(llvm::MachineInstr&, unsigned int) const /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp:1737:17
# | #12 0x000062da836569e1 (anonymous namespace)::AArch64O0PreLegalizerCombinerImpl::tryCombineAll(llvm::MachineInstr&) const /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/Target/AArch64/GISel/AArch64O0PreLegalizerCombiner.cpp:105:16
# | #13 0x000062da88638623 llvm::Combiner::combineMachineInstrs() /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/CodeGen/GlobalISel/Combiner.cpp:312:7
# | #14 0x000062da83654af2 (anonymous namespace)::runCombiner(llvm::MachineFunction&, llvm::LibcallLoweringInfo const&, AArch64O0PreLegalizerCombinerImplRuleConfig const&) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/Target/AArch64/GISel/AArch64O0PreLegalizerCombiner.cpp:133:15
# | #15 0x000062da8366a0fe (anonymous namespace)::AArch64O0PreLegalizerCombinerLegacy::runOnMachineFunction(llvm::MachineFunction&) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/Target/AArch64/GISel/AArch64O0PreLegalizerCombiner.cpp:0:10
# | #16 0x000062da860cea4c llvm::MachineFunctionPass::runOnFunction(llvm::Function&) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/CodeGen/MachineFunctionPass.cpp:0:10
# | #17 0x000062da869213cd llvm::FPPassManager::runOnFunction(llvm::Function&) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1390:27
# | #18 0x000062da8692b2e3 getNext /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/include/llvm/ADT/ilist_node_base.h:42:38
# | #19 0x000062da8692b2e3 getNext /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/include/llvm/ADT/ilist_node.h:108:59
# | #20 0x000062da8692b2e3 operator++ /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/include/llvm/ADT/ilist_iterator.h:187:57
# | #21 0x000062da8692b2e3 llvm::FPPassManager::runOnModule(llvm::Module&) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1435:20
# | #22 0x000062da86921f7b runOnModule /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:0:27
# | #23 0x000062da86921f7b llvm::legacy::PassManagerImpl::run(llvm::Module&) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:531:44
Step 11 (stage2/ubsan check) failure: stage2/ubsan check (failure)
...
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using ld.lld: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using lld-link: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using ld64.lld: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using wasm-ld: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using ld.lld: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using lld-link: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using ld64.lld: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:569: note: using wasm-ld: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/wasm-ld
-- Testing: 100161 tests, 64 workers --
Testing: 0.. 10.. 20..
FAIL: LLVM :: CodeGen/AArch64/aarch64-mops.ll (30250 of 100161)
******************** TEST 'LLVM :: CodeGen/AArch64/aarch64-mops.ll' FAILED ********************
Exit Code: 2
Command Output (stdout):
--
# RUN: at line 3
/home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/llc /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/CodeGen/AArch64/aarch64-mops.ll -o - -mtriple=aarch64 -O0 -global-isel=1 -global-isel-abort=1 | /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/FileCheck /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/CodeGen/AArch64/aarch64-mops.ll --check-prefixes=GISel-WITHOUT-MOPS,GISel-WITHOUT-MOPS-O0
# executed command: /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/llc /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/CodeGen/AArch64/aarch64-mops.ll -o - -mtriple=aarch64 -O0 -global-isel=1 -global-isel-abort=1
# .---command stderr------------
# | 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-bootstrap-ubsan/build/llvm_build_ubsan/bin/llc /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/CodeGen/AArch64/aarch64-mops.ll -o - -mtriple=aarch64 -O0 -global-isel=1 -global-isel-abort=1
# | 1. Running pass 'Function Pass Manager' on module '/home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/CodeGen/AArch64/aarch64-mops.ll'.
# | 2. Running pass 'AArch64O0PreLegalizerCombiner' on function '@memset_0_zeroval'
# | #0 0x000062da87c8489e llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/Support/Unix/Signals.inc:881:13
# | #1 0x000062da87c81996 llvm::sys::RunSignalHandlers() /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/Support/Signals.cpp:109:18
# | #2 0x000062da87c85de8 SignalHandler(int, siginfo_t*, void*) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/Support/Unix/Signals.inc:448:38
# | #3 0x000079d70ea47e10 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x47e10)
# | #4 0x000079d70eaae3ec pthread_kill (/usr/lib/x86_64-linux-gnu/libc.so.6+0xae3ec)
# | #5 0x000079d70ea47cde raise (/usr/lib/x86_64-linux-gnu/libc.so.6+0x47cde)
# | #6 0x000079d70ea288ec abort (/usr/lib/x86_64-linux-gnu/libc.so.6+0x288ec)
# | #7 0x000062da830971fc (/home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/llc+0x7d491fc)
# | #8 0x000062da8309511e __sanitizer::Die() /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_termination.cpp:52:5
# | #9 0x000062da830a9009 (/home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/llc+0x7d5b009)
# | #10 0x000062da88724be5 llvm::LegalizerHelper::lowerMemCpyFamily(llvm::MachineInstr&, unsigned int) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp:11046:40
# | #11 0x000062da88646cb2 llvm::CombinerHelper::tryCombineMemCpyFamily(llvm::MachineInstr&, unsigned int) const /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp:1737:17
# | #12 0x000062da836569e1 (anonymous namespace)::AArch64O0PreLegalizerCombinerImpl::tryCombineAll(llvm::MachineInstr&) const /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/Target/AArch64/GISel/AArch64O0PreLegalizerCombiner.cpp:105:16
# | #13 0x000062da88638623 llvm::Combiner::combineMachineInstrs() /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/CodeGen/GlobalISel/Combiner.cpp:312:7
# | #14 0x000062da83654af2 (anonymous namespace)::runCombiner(llvm::MachineFunction&, llvm::LibcallLoweringInfo const&, AArch64O0PreLegalizerCombinerImplRuleConfig const&) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/Target/AArch64/GISel/AArch64O0PreLegalizerCombiner.cpp:133:15
# | #15 0x000062da8366a0fe (anonymous namespace)::AArch64O0PreLegalizerCombinerLegacy::runOnMachineFunction(llvm::MachineFunction&) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/Target/AArch64/GISel/AArch64O0PreLegalizerCombiner.cpp:0:10
# | #16 0x000062da860cea4c llvm::MachineFunctionPass::runOnFunction(llvm::Function&) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/CodeGen/MachineFunctionPass.cpp:0:10
# | #17 0x000062da869213cd llvm::FPPassManager::runOnFunction(llvm::Function&) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1390:27
# | #18 0x000062da8692b2e3 getNext /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/include/llvm/ADT/ilist_node_base.h:42:38
# | #19 0x000062da8692b2e3 getNext /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/include/llvm/ADT/ilist_node.h:108:59
# | #20 0x000062da8692b2e3 operator++ /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/include/llvm/ADT/ilist_iterator.h:187:57
# | #21 0x000062da8692b2e3 llvm::FPPassManager::runOnModule(llvm::Module&) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1435:20
# | #22 0x000062da86921f7b runOnModule /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:0:27
# | #23 0x000062da86921f7b llvm::legacy::PassManagerImpl::run(llvm::Module&) /home/b/sanitizer-x86_64-linux-bootstrap-ubsan/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:531:44
```
</details>
https://github.com/llvm/llvm-project/pull/201766
More information about the llvm-commits
mailing list