[PATCH] D126661: [MachineVerifier] Fix crash on early clobbered subreg operands.

Matthias Braun via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 1 13:40:38 PDT 2022


MatzeB requested changes to this revision.
MatzeB added a comment.
This revision now requires changes to proceed.

I guess Jay already posted the liveness info. It seems this is related to `CalcLiveRangeUtilBase::createDeadDef` moving definitions to the early clobber slot when there's an early-clobber and a normal def. Judging by the longer explanation in that function this is probably deliberate and we have to blame the MachineVerifier here. But that means you should fix the machine verifier and not just disable a whole subset of tests!

I think to adapt to this, when you see an operand defined at a normal position but the live range starting at an early-clobber spot you need to do a 2nd pass making sure that there is another early-clobber def and in that case skip the warning!


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D126661



More information about the llvm-commits mailing list