[PATCH] D85416: [ScalarizeMaskedMemIntrin] Scalarize constant mask expandload as shuffle(build_vector,pass_through)

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 6 07:18:32 PDT 2020


spatel added inline comments.


================
Comment at: llvm/lib/CodeGen/ScalarizeMaskedMemIntrin.cpp:166
 
   if (isConstantIntVector(Mask)) {
     for (unsigned Idx = 0; Idx < VectorWidth; ++Idx) {
----------------
Would it make sense to do the same thing here? Ie, make a shared helper function.
It might be that later matching always gets this case, but it would still be an efficiency win to produce the blend shuffle here too?


================
Comment at: llvm/lib/CodeGen/ScalarizeMaskedMemIntrin.cpp:630
+    VResult = UndefValue::get(VecType);
+    SmallVector<int, 16> ShuffleMask(VectorWidth, -1);
     for (unsigned Idx = 0; Idx < VectorWidth; ++Idx) {
----------------
-1 -> "UndefMaskElem"


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D85416



More information about the llvm-commits mailing list