mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-11 11:34:02 +00:00
Remove unneeded function, since PR8156 was fixed over a year ago.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169534 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
972f087dbb
commit
d3a056392b
@ -6458,23 +6458,6 @@ static bool MayFoldVectorLoad(SDValue V) {
|
||||
return MayFoldLoad(V);
|
||||
}
|
||||
|
||||
// FIXME: the version above should always be used. Since there's
|
||||
// a bug where several vector shuffles can't be folded because the
|
||||
// DAG is not updated during lowering and a node claims to have two
|
||||
// uses while it only has one, use this version, and let isel match
|
||||
// another instruction if the load really happens to have more than
|
||||
// one use. Remove this version after this bug get fixed.
|
||||
// rdar://8434668, PR8156
|
||||
static bool RelaxedMayFoldVectorLoad(SDValue V) {
|
||||
if (V.hasOneUse() && V.getOpcode() == ISD::BITCAST)
|
||||
V = V.getOperand(0);
|
||||
if (V.hasOneUse() && V.getOpcode() == ISD::SCALAR_TO_VECTOR)
|
||||
V = V.getOperand(0);
|
||||
if (ISD::isNormalLoad(V.getNode()))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
static
|
||||
SDValue getMOVDDup(SDValue &Op, DebugLoc &dl, SDValue V1, SelectionDAG &DAG) {
|
||||
EVT VT = Op.getValueType();
|
||||
@ -6778,7 +6761,7 @@ X86TargetLowering::LowerVECTOR_SHUFFLE(SDValue Op, SelectionDAG &DAG) const {
|
||||
return getTargetShuffleNode(X86ISD::UNPCKH, dl, VT, V1, V1, DAG);
|
||||
|
||||
if (isMOVDDUPMask(M, VT) && Subtarget->hasSSE3() &&
|
||||
V2IsUndef && RelaxedMayFoldVectorLoad(V1))
|
||||
V2IsUndef && MayFoldVectorLoad(V1))
|
||||
return getMOVDDup(Op, dl, V1, DAG);
|
||||
|
||||
if (isMOVHLPS_v_undef_Mask(M, VT))
|
||||
|
Loading…
x
Reference in New Issue
Block a user