[PATCH] D36960: [X86][LLVM]Expanding Supports lowerInterleavedLoad() in X86InterleavedAccess (VF{8|16|32} stride 3).

Guy Blank via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 29 22:49:11 PDT 2017


guyblank added inline comments.


================
Comment at: lib/Target/X86/X86InterleavedAccess.cpp:386
+//  (false - align to the "rigth" side while true - align to the "rigth" side)
+static void createAlignMask(int VF, int Align, SmallVectorImpl<uint32_t> &Mask,
+                            int VectorSize, bool AlignBegin = false) {
----------------
are you sure you need this function? can you use DecodePALIGNRMask ?


================
Comment at: lib/Target/X86/X86InterleavedAccess.cpp:413
+  TransposedMatrix.resize(3);
+  SmallVector<uint32_t, 32> Concat;
+  SmallVector<uint32_t, 32> VPShuf;
----------------
can this be an array?


================
Comment at: lib/Target/X86/X86InterleavedAccess.cpp:422
+  int VectorWide = VecElems * 8;
+  for (unsigned i = 0; i < VecElems; i++)
+    Concat.push_back(i);
----------------
++i, below as well


https://reviews.llvm.org/D36960





More information about the llvm-commits mailing list