[llvm] [AArch64] Convert concat(uhadd(a,b), uhadd(c,d)) to uhadd(concat(a,c), concat(b,d)) (PR #79464)

Ben Langmuir via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 31 13:40:25 PST 2024


benlangmuir wrote:

I see you already reverted (thanks!), but in case it helps you investigate, this also seems to have hit a fatal error:

https://green.lab.llvm.org/green/job/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/15892/

```
fatal error: error in backend: SmallVector unable to grow. Requested capacity (4294967296) is larger than maximum value for size type (4294967295)
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: /Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang++ -DNDEBUG -B /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin -Wno-unused-command-line-argument -mllvm -verify-machineinstrs -O0 -g -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.5.sdk -fPIE -w -Werror=date-time -MD -MT Bitcode/simd_ops/CMakeFiles/simd_ops_test_op_uhadd_758.dir/AArch64_tests/test_op_uhadd_758.bc.o -MF Bitcode/simd_ops/CMakeFiles/simd_ops_test_op_uhadd_758.dir/AArch64_tests/test_op_uhadd_758.bc.o.d -o Bitcode/simd_ops/CMakeFiles/simd_ops_test_op_uhadd_758.dir/AArch64_tests/test_op_uhadd_758.bc.o -c /Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/test-suite/Bitcode/simd_ops/AArch64_tests/test_op_uhadd_758.bc
1.	Code generation
2.	Running pass 'Function Pass Manager' on module '/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/test-suite/Bitcode/simd_ops/AArch64_tests/test_op_uhadd_758.bc'.
3.	Running pass 'AArch64 Instruction Selection' on function '@__test_op'
 #0 0x00000001067be117 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang+++0x102c25117)
 #1 0x00000001067bc291 llvm::sys::RunSignalHandlers() (/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang+++0x102c23291)
 #2 0x00000001067bd8e0 llvm::sys::CleanupOnSignal(unsigned long) (/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang+++0x102c248e0)
 #3 0x000000010670f8fe (anonymous namespace)::CrashRecoveryContextImpl::HandleCrash(int, unsigned long) (/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang+++0x102b768fe)
 #4 0x000000010670f8a2 llvm::CrashRecoveryContext::HandleExit(int) (/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang+++0x102b768a2)
 #5 0x00000001067b92dc llvm::sys::Process::Exit(int, bool) (/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang+++0x102c202dc)
 #6 0x0000000103ba3b99 LLVMErrorHandler(void*, char const*, bool) (/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang+++0x10000ab99)
 #7 0x0000000106719706 llvm::report_fatal_error(llvm::Twine const&, bool) (/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang+++0x102b80706)
 #8 0x0000000106753be2 report_size_overflow(unsigned long, unsigned long) (/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang+++0x102bbabe2)
 #9 0x000000010675370a llvm::SmallVectorBase<unsigned int>::grow_pod(void*, unsigned long, unsigned long) (/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang+++0x102bba70a)
#10 0x0000000107770780 (anonymous namespace)::DAGCombiner::AddToWorklist(llvm::SDNode*, bool) (/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang+++0x103bd7780)
#11 0x0000000107771cda llvm::SelectionDAG::Combine(llvm::CombineLevel, llvm::AAResults*, llvm::CodeGenOptLevel) (/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang+++0x103bd8cda)
#12 0x0000000107a0117f llvm::SelectionDAGISel::CodeGenAndEmitDAG() (/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang+++0x103e6817f)
#13 0x00000001079fefc6 llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) (/Users/buildslave/jenkins/workspace/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g/compiler/bin/clang+++0x103e65fc6)
```

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


More information about the llvm-commits mailing list