summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorJordan Rupprecht <rupprecht@google.com>2019-08-16 23:08:56 +0000
committerJordan Rupprecht <rupprecht@google.com>2019-08-16 23:08:56 +0000
commitd0797ece4641580d0c2c4a60ff3d6696b657a2e5 (patch)
treedd22c27d5eb246244ab217b01ddc81c450c7731f /llvm/lib
parent515ad8fe4acbfcd0eb6c179a61e2acb134495843 (diff)
downloadbcm5719-llvm-d0797ece4641580d0c2c4a60ff3d6696b657a2e5.tar.gz
bcm5719-llvm-d0797ece4641580d0c2c4a60ff3d6696b657a2e5.zip
Revert [X86] SimplifyDemandedVectorElts - attempt to recombine target shuffle using DemandedElts mask (reapplied)
This reverts r368662 (git commit 1a8d790cf5f89c1df718844f13e934e39bef6ef5) The compile-time regression repro is in https://bugs.llvm.org/show_bug.cgi?id=43024 llvm-svn: 369167
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/X86/X86ISelLowering.cpp17
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) {
OpenPOWER on IntegriCloud