[PATCH] D80999: [ARM][CodeGen] Enabling spilling of high registers in RegAllocFast for Thumb1

Lucas Prates via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 16 09:21:58 PDT 2020


pratlucas marked 4 inline comments as done.
pratlucas added inline comments.


================
Comment at: llvm/lib/CodeGen/RegAllocFast.cpp:603
-/// Allocates a physical register for VirtReg.
-void RegAllocFast::allocVirtReg(MachineInstr &MI, LiveReg &LR, Register Hint0) {
-  const Register VirtReg = LR.VirtReg;
----------------
arsenm wrote:
> Can you split these NFC changes into a separate patch? I want to avoid yet another rebase nightmare for D52010
Done! NFC is at D81942.


================
Comment at: llvm/lib/CodeGen/RegAllocFast.cpp:1034
                     (MO.isImplicit() || MO.isDead()) ? regFree : regReserved);
+      markRegUsedInInstr(Reg);
       hasEarlyClobbers = true;
----------------
arsenm wrote:
> I don't think any of these new markRegUsedInInstr calls are correct
Those aren't actually new. I've added them here to replace the one removed from `definePhysReg`.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D80999





More information about the llvm-commits mailing list