[PATCH] D121744: [SCCP] Update ValueLatticeElement blockaddresses when removing unreachable BasicBlocks

Nick Desaulniers via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 16 11:59:31 PDT 2022


nickdesaulniers added a comment.

In D121744#3386887 <https://reviews.llvm.org/D121744#3386887>, @efriedma wrote:

> I think my preferred solution here would be to delay deleting dead blocks further, until the lattice stops mattering.



  diff --git a/llvm/lib/Transforms/Scalar/SCCP.cpp b/llvm/lib/Transforms/Scalar/SCCP.cpp
  index 794d4c5b5bc6..e9e3e90df875 100644
  --- a/llvm/lib/Transforms/Scalar/SCCP.cpp
  +++ b/llvm/lib/Transforms/Scalar/SCCP.cpp
  @@ -505,7 +505,7 @@ bool llvm::runIPSCCP(
   
           MadeChanges = true;
   
  -        if (&BB != &F.front())
  +        if (&BB != &F.front() && !BB.hasAddressTaken())
             BlocksToErase.push_back(&BB);
           continue;
         }

?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D121744



More information about the llvm-commits mailing list