[PATCH] D137813: [RegAlloc Greedy]Account statepoints while splitting single basic block

Serguei Katkov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 10 20:54:03 PST 2022


skatkov added inline comments.


================
Comment at: llvm/lib/CodeGen/StackMaps.cpp:151
+  unsigned FoldableAreaStart = getVarIdx();
+  for (const MachineOperand &MO : MI->uses()) {
+    if (MI->getOperandNo(&MO) >= FoldableAreaStart)
----------------
skatkov wrote:
> arsenm wrote:
> > Do you need to filter out implicit-defs? uses doesn't
> Good question. For explicit defs - they are tied to uses in foldable area, no need to check them.
> I doubt statepoint instruction has virtual registers inplicit-defs.
> Will check.
Statepoint instruction is pseudo instruction and does not have implicit-defs in description.
There is a "hack" for aarch64 platform which adds LR physical register as implicit def to statepoint instruction.

But virtual register cannot be implicit def of statepoint instruciton.
So the answer - I do not need to check implicit-defs.


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

https://reviews.llvm.org/D137813



More information about the llvm-commits mailing list