[llvm] [VPlan] Verify dominance for incoming values of phi-like recipes. (PR #124838)
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Thu May 15 03:07:57 PDT 2025
================
@@ -220,12 +219,29 @@ bool VPlanVerifier::verifyVPBasicBlock(const VPBasicBlock *VPBB) {
for (const VPUser *U : V->users()) {
auto *UI = cast<VPRecipeBase>(U);
- // TODO: check dominance of incoming values for phis properly.
- if (!UI ||
- isa<VPHeaderPHIRecipe, VPWidenPHIRecipe, VPPredInstPHIRecipe,
- VPIRPhi>(UI) ||
- (isa<VPInstruction>(UI) &&
- cast<VPInstruction>(UI)->getOpcode() == Instruction::PHI))
+ if (auto *Phi = dyn_cast<VPPhiAccessors>(UI)) {
+ for (unsigned Idx = 0; Idx != Phi->getNumIncoming(); ++Idx) {
+ VPValue *IncVPV = Phi->getIncomingValue(Idx);
+ if (IncVPV != V)
+ continue;
+ const VPBasicBlock *IncVPBB = Phi->getIncomingBlock(Idx);
+ if (!VPDT.dominates(VPBB, IncVPBB)) {
----------------
fhahn wrote:
updated thanks
https://github.com/llvm/llvm-project/pull/124838
More information about the llvm-commits
mailing list