[PATCH] D114611: [AVR] Expand STDWSPQRr & STDSPQRr, approach #2

Ben Shi via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Mar 19 07:47:17 PDT 2022


benshi001 added inline comments.


================
Comment at: llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp:1256
 
-  auto MIBHI = buildMI(MBB, MBBI, OpHi)
-                   .addReg(DstReg, getKillRegState(DstIsKill))
-                   .addImm(Imm + 1)
-                   .addReg(SrcHiReg, getKillRegState(SrcIsKill));
+    buildMI(MBB, MBBI, AVR::STWPtrRr)
+        .addReg(Dst.getReg())
----------------
```
    buildMI(MBB, MBBI, AVR::STWPtrRr)
        .addReg(Dst.getReg(), RegState::Kill)
        .addReg(Src.getReg(), getKillRegState(SrcIsKill));
```

No matter `DstIsKill` is true or false, the new `DstReg` is always killed.


================
Comment at: llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp:1261
+    if (!DstIsKill) {
+      buildMI(MBB, MBBI, AVR::POPWRd).addDef(Dst.getReg());
+    }
----------------
I think 

```
   if (!DstIsKill)
      buildMI(MBB, MBBI, AVR::POPWRd).addReg(DstReg, RegState::Define);
```


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D114611/new/

https://reviews.llvm.org/D114611



More information about the llvm-commits mailing list