[PATCH] Using Masked Load / Store intrinsics in Loop Vectorizer

Michael Zolotukhin mzolotukhin at apple.com
Fri Dec 5 15:33:43 PST 2014


Hi Elena,

Please see a question from me in inline comments. And thanks for doing this!

Michael

================
Comment at: lib/Transforms/Vectorize/LoopVectorize.cpp:5386-5387
@@ +5385,4 @@
+          !SI->getParent()->getSinglePredecessor()) {
+        if (canPredicateStore(SI->getValueOperand()->getType(),
+                                  SI->getPointerOperand())) {
+          MaskedOp.insert(SI);
----------------
Could this condition be simplified? E.g. we can store result of canPredicateStore(..) in a bool variable and use it here.
Also, I think it might be incorrect - shouldn't we insert SI to MaskedOp even if NumPredStores hasn't exceeded NumberOfStoresToPredicate?

http://reviews.llvm.org/D6527






More information about the llvm-commits mailing list