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 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits