[llvm] r364569 - [X86] combineX86ShufflesRecursively - merge shuffles with more than 2 inputs

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 27 10:30:52 PDT 2019


Author: rksimon
Date: Thu Jun 27 10:30:51 2019
New Revision: 364569

URL: http://llvm.org/viewvc/llvm-project?rev=364569&view=rev
Log:
[X86] combineX86ShufflesRecursively - merge shuffles with more than 2 inputs

We already had the infrastructure for this, but were waiting for the fix for a number of regressions which were handled by the recent shuffle(extract_subvector(),extract_subvector()) -> extract_subvector(shuffle()) shuffle combines

Modified:
    llvm/trunk/lib/Target/X86/X86ISelLowering.cpp

Modified: llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp?rev=364569&r1=364568&r2=364569&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (original)
+++ llvm/trunk/lib/Target/X86/X86ISelLowering.cpp Thu Jun 27 10:30:51 2019
@@ -32519,10 +32519,6 @@ static SDValue combineX86ShufflesRecursi
   if (!resolveTargetShuffleInputs(Op, OpInputs, OpMask, DAG))
     return SDValue();
 
-  // TODO - Add support for more than 2 inputs.
-  if (2 < OpInputs.size())
-    return SDValue();
-
   // Add the inputs to the Ops list, avoiding duplicates.
   SmallVector<SDValue, 16> Ops(SrcOps.begin(), SrcOps.end());
 




More information about the llvm-commits mailing list