[PATCH] D19212: Have isKnownNotFullPoison be smarter around control flow

Sanjoy Das via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 21 23:39:33 PDT 2016


sanjoy marked an inline comment as done.

================
Comment at: lib/Analysis/ValueTracking.cpp:3442
@@ -3446,7 +3441,3 @@
 
-    // Mark poison that propagates from I through uses of I.
-    if (YieldsPoison.count(&*I)) {
-      for (const User *User : I->users()) {
-        const Instruction *UserI = cast<Instruction>(User);
-        if (UserI->getParent() == BB && propagatesFullPoison(UserI))
-          YieldsPoison.insert(User);
+  while (true) {
+    for (auto &I : make_range(Begin, End)) {
----------------
broune wrote:
> Would it make sense to have a limit on how many instructions/basic blocks this will consider?
Added a limit of `MaxDepth` blocks (for the lack of a better limit).


http://reviews.llvm.org/D19212





More information about the llvm-commits mailing list