[PATCH] D47022: Update MemorySSA in SimpleLoopUnswitch.

Alina Sbirlea via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 4 06:04:52 PST 2018


asbirlea marked an inline comment as done.
asbirlea added inline comments.


================
Comment at: lib/Transforms/Scalar/SimpleLoopUnswitch.cpp:1437-1442
+  // Remove all MemorySSA in the dead blocks
+  if (MSSAU) {
+    SmallPtrSet<BasicBlock *, 16> DeadBlockSet(DeadBlocks.begin(),
+                                               DeadBlocks.end());
+    MSSAU->removeBlocks(DeadBlockSet);
+  }
----------------
chandlerc wrote:
> It would be really nice to avoid building the set here. Can the API be changed to support a list of unique blocks? We already have uniqued them.
> 
> (Happy for this to be a follow-up of course.)
The implementation of removeBlocks checks existence of a basic block in this list(`.count(BB)`), and I think that's best done with a set. So not sure if we can avoid building the set anyway.
I can push the set creation in an API (i.e. a wrapper taking a list and building the set).


Repository:
  rL LLVM

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

https://reviews.llvm.org/D47022





More information about the llvm-commits mailing list