[llvm] [LV] Update incoming blocks in VPWidenPHIRecipe in reassociateBlocks (PR #125481)
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Mon Feb 3 04:33:02 PST 2025
================
@@ -169,8 +169,19 @@ class VPBlockUtils {
static void reassociateBlocks(VPBlockBase *Old, VPBlockBase *New) {
for (auto *Pred : to_vector(Old->getPredecessors()))
Pred->replaceSuccessor(Old, New);
- for (auto *Succ : to_vector(Old->getSuccessors()))
+ for (auto *Succ : to_vector(Old->getSuccessors())) {
Succ->replacePredecessor(Old, New);
+
+ // Replace any references to Old in widened phi incoming blocks.
+ while (auto *Region = dyn_cast<VPRegionBlock>(Succ))
+ Succ = Region->getEntry();
----------------
fhahn wrote:
can you use `Succ->getEntryBasicBlock()`?
https://github.com/llvm/llvm-project/pull/125481
More information about the llvm-commits
mailing list