diff options
Diffstat (limited to 'llvm/lib/Target/X86/X86ISelLowering.cpp')
-rw-r--r-- | llvm/lib/Target/X86/X86ISelLowering.cpp | 17 |
1 files changed, 0 insertions, 17 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index c9e3390c5d1..207782bc80b 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -33905,23 +33905,6 @@ bool X86TargetLowering::SimplifyDemandedVectorEltsForTargetNode( return true; } - // If we don't demand all elements, then attempt to combine to a simpler - // shuffle. - // TODO: Handle other depths, but first we need to handle the fact that - // it might combine to the same shuffle. - if (!DemandedElts.isAllOnesValue() && Depth == 0) { - SmallVector<int, 32> DemandedMask(NumElts, SM_SentinelUndef); - for (int i = 0; i != NumElts; ++i) - if (DemandedElts[i]) - DemandedMask[i] = i; - - SDValue NewShuffle = combineX86ShufflesRecursively( - {Op}, 0, Op, DemandedMask, {}, Depth, /*HasVarMask*/ false, - /*AllowVarMask*/ true, TLO.DAG, Subtarget); - if (NewShuffle) - return TLO.CombineTo(Op, NewShuffle); - } - // Extract known zero/undef elements. // TODO - Propagate input undef/zero elts. for (int i = 0; i != NumElts; ++i) { |