[PATCH] D84737: [AArch64][SVE] Preserve full vector regs over EH edge.

Sander de Smalen via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 28 02:16:35 PDT 2020


sdesmalen added inline comments.


================
Comment at: llvm/lib/CodeGen/RegAllocFast.cpp:1215
+      if (auto *RegMask = TRI->getCustomEHPadPreservedMask(*MBB.getParent()))
+        MRI->addPhysRegsUsedFromRegMask(RegMask);
+
----------------
sdesmalen wrote:
> efriedma wrote:
> > This seems like a really weird location for this call; it's modifying function-global state in the middle of register allocation.
> > 
> > I'd prefer to do one of the following:
> > 
> > 1. Attach the register mask to the landingpad instruction itself.
> > 2. Update the function-global state when we construct the landing pad instruction/node.
> > This seems like a really weird location for this call; it's modifying function-global state in the middle of register allocation.
> The same seems to happen in `allocateInstruction(MI)` (see line 989) for an instruction when one of the operands is a register mask.
Sorry, please ignore this comment (I wrote it before I updated this revision the other day, but forgot to remove it).


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

https://reviews.llvm.org/D84737



More information about the llvm-commits mailing list