[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:14:13 PDT 2020
sdesmalen added a comment.
In D84737#2242900 <https://reviews.llvm.org/D84737#2242900>, @efriedma wrote:
> Does MIRParser also need to be modified?
You're right, that was missing. Thanks for pointing out!
================
Comment at: llvm/lib/CodeGen/RegAllocFast.cpp:1215
+ if (auto *RegMask = TRI->getCustomEHPadPreservedMask(*MBB.getParent()))
+ MRI->addPhysRegsUsedFromRegMask(RegMask);
+
----------------
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.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D84737/new/
https://reviews.llvm.org/D84737
More information about the llvm-commits
mailing list