D58053/rL354340 added this to EltsFromConsecutiveLoads directly
llvm-svn: 354732
return Ld;
}
}
- // If lower/upper loads are the same and there's no other use of the lower
- // load, then splat the loaded value with a broadcast.
- if (auto *Ld = dyn_cast<LoadSDNode>(peekThroughOneUseBitcasts(SubVec2)))
- if (SubVec2 == SubVec && ISD::isNormalLoad(Ld) && Vec.hasOneUse())
- return DAG.getNode(X86ISD::SUBV_BROADCAST, dl, OpVT, SubVec);
// If this broadcast/subv_broadcast is inserted into both halves, use a
// larger broadcast/subv_broadcast.