[PATCH] D31668: Fix PR30562

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 6 12:06:10 PDT 2017


efriedma added inline comments.


================
Comment at: lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1198
+      if (SDNode::hasPredecessorHelper(ST, Visited, Worklist) ||
+          ST->hasPredecessor(Idx.getNode()))
         continue;
----------------
This doesn't look like it's checking for the right thing.  The problem isn't that the store depends on Idx; if you change the GEP in your testcase to "getelementptr inbounds i64, i64* %perm, i64 %n", there is no cycle.  The actual problem is that the store depends on Op (the extractelement itself).


https://reviews.llvm.org/D31668





More information about the llvm-commits mailing list