reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Target/X86/X86ISelLowering.cpp
34139   if (auto *Shuf = dyn_cast<ShuffleVectorSDNode>(N))
34145   SDLoc dl(N);
34146   EVT VT = N->getValueType(0);
34149     if (SDValue AddSub = combineShuffleToAddSubOrFMAddSub(N, Subtarget, DAG))
34152     if (SDValue HAddSub = foldShuffleOfHorizOp(N, DAG))
34157   if (SDValue LD = combineToConsecutiveLoads(VT, N, dl, DAG, Subtarget, true))
34166   if (SDValue ShufConcat = combineShuffleOfConcatUndef(N, DAG, Subtarget))
34169   if (isTargetShuffle(N->getOpcode())) {
34170     SDValue Op(N, 0);
34187       return SDValue(N, 0);
34193   if (N->getOpcode() == X86ISD::VZEXT_MOVL &&
34195       N->getOperand(0).getOpcode() == ISD::BITCAST &&
34196       (N->getOperand(0).getOperand(0).getValueType() == MVT::v4f32 ||
34197        N->getOperand(0).getOperand(0).getValueType() == MVT::v4i32)) {
34198     SDValue In = N->getOperand(0).getOperand(0);
34211         return N->getOperand(0); // return the bitcast
34220   if (N->getOpcode() == X86ISD::VZEXT_MOVL && !DCI.isBeforeLegalizeOps() &&
34221       N->getOperand(0).getOpcode() == ISD::INSERT_SUBVECTOR &&
34222       N->getOperand(0).hasOneUse() &&
34223       N->getOperand(0).getOperand(0).isUndef() &&
34224       isNullConstant(N->getOperand(0).getOperand(2))) {
34225     SDValue In = N->getOperand(0).getOperand(1);
34229                        Movl, N->getOperand(0).getOperand(2));
34234   if (N->getOpcode() == X86ISD::VZEXT_MOVL && N->getOperand(0).hasOneUse() &&
34234   if (N->getOpcode() == X86ISD::VZEXT_MOVL && N->getOperand(0).hasOneUse() &&
34235       ISD::isNormalLoad(N->getOperand(0).getNode())) {
34236     LoadSDNode *LN = cast<LoadSDNode>(N->getOperand(0));