[PATCH] D122533: [AVR] Remove AVRRelaxMemOperations
Ben Shi via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Sun Mar 27 03:47:51 PDT 2022
benshi001 added a comment.
I have built (with -DCMAKE_BUILD_TYPE=Debug) and tested your patch, but got the following failure
FAIL: LLVM :: CodeGen/AVR/pseudo/STDWPtrQRr.mir (150 of 152)
******************** TEST 'LLVM :: CodeGen/AVR/pseudo/STDWPtrQRr.mir' FAILED ********************
Script:
--
: 'RUN: at line 1'; /home/shiben/work/llvm-project/build-x/bin/llc -O0 -run-pass=avr-expand-pseudo /home/shiben/work/llvm-project/llvm/test/CodeGen/AVR/pseudo/STDWPtrQRr.mir -o - | /home/shiben/work/llvm-project/build-x/bin/FileCheck /home/shiben/work/llvm-project/llvm/test/CodeGen/AVR/pseudo/STDWPtrQRr.mir
--
Exit Code: 2
Command Output (stderr):
--
# After AVR pseudo instruction expansion pass
# Machine code for function test: IsSSA, NoPHIs, TracksLiveness, NoVRegs
bb.0.entry:
STDPtrQRr $r29r28, 3, $r0
STDPtrQRr $r29r28, 4, $r1
STDPtrQRr $r29r28, 3, $r0
STDPtrQRr killed $r29r28, 4, $r1
STDPtrQRr $r29r28, 3, killed $r0
STDPtrQRr $r29r28, 4, killed $r1
STDPtrQRr $r29r28, 62, $r0
STDPtrQRr $r29r28, 63, $r1
PUSHRr $r28, implicit-def $sp, implicit $sp
PUSHRr $r29, implicit-def $sp, implicit $sp
$r28 = SBCIRdK killed $r28(tied-def 0), 193, implicit-def $sreg, implicit killed $sreg
$r29 = SBCIRdK killed $r29(tied-def 0), 255, implicit-def $sreg, implicit killed $sreg
STPtrRr $r29r28, $r0
STDPtrQRr $r29r28, 1, $r1
$r29 = POPRd implicit-def $sp, implicit $sp
$r28 = POPRd implicit-def $sp, implicit $sp
$r28 = SBCIRdK killed $r28(tied-def 0), 193, implicit-def $sreg, implicit killed $sreg
$r29 = SBCIRdK killed $r29(tied-def 0), 255, implicit-def $sreg, implicit killed $sreg
STPtrRr $r29r28, $r0
STDPtrQRr $r29r28, 1, $r1
PUSHRr $r28, implicit-def $sp, implicit $sp
PUSHRr $r29, implicit-def $sp, implicit $sp
$r28 = SBCIRdK killed $r28(tied-def 0), 193, implicit-def $sreg, implicit killed $sreg
$r29 = SBCIRdK killed $r29(tied-def 0), 255, implicit-def $sreg, implicit killed $sreg
STPtrRr $r29r28, killed $r0
STDPtrQRr $r29r28, 1, killed $r1
$r29 = POPRd implicit-def $sp, implicit $sp
$r28 = POPRd implicit-def $sp, implicit $sp
# End machine code for function test.
*** Bad machine code: Using an undefined physical register ***
- function: test
- basic block: %bb.0 entry (0x563a083b79e8)
- instruction: $r28 = SBCIRdK killed $r28(tied-def 0), 193, implicit-def $sreg, implicit killed $sreg
- operand 4: implicit killed $sreg
LLVM ERROR: Found 1 machine code errors.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: /home/shiben/work/llvm-project/build-x/bin/llc -O0 -run-pass=avr-expand-pseudo /home/shiben/work/llvm-project/llvm/test/CodeGen/AVR/pseudo/STDWPtrQRr.mir -o -
1. Running pass 'Function Pass Manager' on module '/home/shiben/work/llvm-project/llvm/test/CodeGen/AVR/pseudo/STDWPtrQRr.mir'.
2. Running pass 'Verify generated machine code' on function '@test'
#0 0x0000563a036e61a8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/shiben/work/llvm-project/llvm/lib/Support/Unix/Signals.inc:565:0
#1 0x0000563a036e625f PrintStackTraceSignalHandler(void*) /home/shiben/work/llvm-project/llvm/lib/Support/Unix/Signals.inc:632:0
#2 0x0000563a036e3e22 llvm::sys::RunSignalHandlers() /home/shiben/work/llvm-project/llvm/lib/Support/Signals.cpp:103:0
#3 0x0000563a036e5b29 SignalHandler(int) /home/shiben/work/llvm-project/llvm/lib/Support/Unix/Signals.inc:407:0
#4 0x00007f1480842980 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x12980)
#5 0x00007f147f4f2e87 raise /build/glibc-uZu3wS/glibc-2.27/signal/../sysdeps/unix/sysv/linux/raise.c:51:0
#6 0x00007f147f4f47f1 abort /build/glibc-uZu3wS/glibc-2.27/stdlib/abort.c:81:0
#7 0x0000563a036202ea llvm::install_bad_alloc_error_handler(void (*)(void*, char const*, bool), void*) /home/shiben/work/llvm-project/llvm/lib/Support/ErrorHandling.cpp:126:0
#8 0x0000563a026cec3f (anonymous namespace)::MachineVerifierPass::runOnMachineFunction(llvm::MachineFunction&) /home/shiben/work/llvm-project/llvm/lib/CodeGen/MachineVerifier.cpp:307:0
#9 0x0000563a0259c657 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) /home/shiben/work/llvm-project/llvm/lib/CodeGen/MachineFunctionPass.cpp:73:0
#10 0x0000563a02c7f2b3 llvm::FPPassManager::runOnFunction(llvm::Function&) /home/shiben/work/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1430:0
#11 0x0000563a02c7f633 llvm::FPPassManager::runOnModule(llvm::Module&) /home/shiben/work/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1476:0
#12 0x0000563a02c7fa7b (anonymous namespace)::MPPassManager::runOnModule(llvm::Module&) /home/shiben/work/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1545:0
#13 0x0000563a02c7a95b llvm::legacy::PassManagerImpl::run(llvm::Module&) /home/shiben/work/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:535:0
#14 0x0000563a02c8034f llvm::legacy::PassManager::run(llvm::Module&) /home/shiben/work/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1673:0
#15 0x0000563a018e2ad1 compileModule(char**, llvm::LLVMContext&) /home/shiben/work/llvm-project/llvm/tools/llc/llc.cpp:724:0
#16 0x0000563a018e073f main /home/shiben/work/llvm-project/llvm/tools/llc/llc.cpp:419:0
#17 0x00007f147f4d5c87 __libc_start_main /build/glibc-uZu3wS/glibc-2.27/csu/../csu/libc-start.c:344:0
#18 0x0000563a018df4ca _start (/home/shiben/work/llvm-project/build-x/bin/llc+0x14b54ca)
FileCheck error: '<stdin>' is empty.
FileCheck command line: /home/shiben/work/llvm-project/build-x/bin/FileCheck /home/shiben/work/llvm-project/llvm/test/CodeGen/AVR/pseudo/STDWPtrQRr.mir
--
********************
********************
Failed Tests (1):
LLVM :: CodeGen/AVR/pseudo/STDWPtrQRr.mir
Testing Time: 33.51s
Passed : 148
Expectedly Failed: 3
Failed : 1
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D122533/new/
https://reviews.llvm.org/D122533
More information about the cfe-commits
mailing list