[PATCH] D15477: [X86][AVX] Only shuffle the lower half of vectors if the upper half is undefined

Elena Demikhovsky via llvm-commits llvm-commits at lists.llvm.org
Sat Dec 12 14:17:35 PST 2015


delena added inline comments.

================
Comment at: lib/Target/X86/X86ISelLowering.cpp:22587
@@ +22586,3 @@
+  // vector_shuffle <X, X, X, X, u, u, u, u> or <X, X, u, u>
+  if (isUndefInRange(SVOp->getMask(), HalfNumElems, HalfNumElems)) {
+    // If the shuffle only uses the lower halves of the inputs,
----------------
Hi Simon,

Why you are doing this in PerformShuffleCombine and not in the lowerVectorShuffle()? As far as I understand, we call "combine" in order to combine multiple nodes. In this case, you just optimize one node.


Repository:
  rL LLVM

http://reviews.llvm.org/D15477





More information about the llvm-commits mailing list