[llvm] [AArch64][GlobalISel] Adopt dup(load) -> LD1R patterns from SelectionDAG (PR #66914)
David Spickett via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 21 05:35:36 PDT 2023
DavidSpickett wrote:
I've reverted this and the followup due to a test suite failure on AArch64 https://github.com/llvm/llvm-project/commit/1778d6802beff204a532e238c7186b3e08926004.
https://lab.llvm.org/buildbot/#/builders/183/builds/16057
To reproduce:
```
bin/clang -DNDEBUG -O0 -w -Werror=date-time -std=c99 -MD -MT -MF -o /tmp/test.o -c ../llvm-test-suite/SingleSource/UnitTests/Vector/AArch64/aarch64_neon_intrinsics.c
```
```
unhandled opcode in isAArch64FrameOffsetLegal
UNREACHABLE executed at /home/david.spickett/llvm-project/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp:4834!
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/david.spickett/build-llvm-aarch64/bin/clang -DNDEBUG -O0 -w -Werror=date-time -std=c99 -MD -MT -MF -o /tmp/test.o -c /home/david.spickett/llvm-test-suite/SingleSource/UnitTests/Vector/AArch64/aarch64_neon_intrinsics.c
1. <eof> parser at end of file
2. Code generation
3. Running pass 'Function Pass Manager' on module '/home/david.spickett/llvm-test-suite/SingleSource/UnitTests/Vector/AArch64/aarch64_neon_intrinsics.c'.
4. Running pass 'Local Stack Slot Allocation' on function '@dotests_1252'
#0 0x0000aaaacdcc7900 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/david.spickett/build-llvm-aarch64/bin/clang+0x32d6900)
#1 0x0000aaaacdcc56fc llvm::sys::RunSignalHandlers() (/home/david.spickett/build-llvm-aarch64/bin/clang+0x32d46fc)
#2 0x0000aaaacdcc6c5c llvm::sys::CleanupOnSignal(unsigned long) (/home/david.spickett/build-llvm-aarch64/bin/clang+0x32d5c5c)
#3 0x0000aaaacdc3c128 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
#4 0x0000ffff98a685c0 (linux-vdso.so.1+0x5c0)
#5 0x0000ffff9857dd78 raise /build/glibc-RIFKjK/glibc-2.31/signal/../sysdeps/unix/sysv/linux/raise.c:51:1
#6 0x0000ffff9856aaac abort /build/glibc-RIFKjK/glibc-2.31/stdlib/abort.c:81:7
#7 0x0000aaaacdc4416c llvm::install_out_of_memory_new_handler() (/home/david.spickett/build-llvm-aarch64/bin/clang+0x325316c)
#8 0x0000aaaacbc4e000 llvm::isAArch64FrameOffsetLegal(llvm::MachineInstr const&, llvm::StackOffset&, bool*, unsigned int*, long*) (/home/david.spickett/build-llvm-aarch64/bin/clang+0x125d000)
#9 0x0000aaaacba8ec94 llvm::AArch64RegisterInfo::needsFrameBaseReg(llvm::MachineInstr*, long) const (/home/david.spickett/build-llvm-aarch64/bin/clang+0x109dc94)
#10 0x0000aaaacd1de474 (anonymous namespace)::LocalStackSlotPass::runOnMachineFunction(llvm::MachineFunction&) LocalStackSlotAllocation.cpp:0:0
#11 0x0000aaaacd248d34 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/home/david.spickett/build-llvm-aarch64/bin/clang+0x2857d34)
<...>
```
https://github.com/llvm/llvm-project/pull/66914
More information about the llvm-commits
mailing list