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

References

lib/Target/X86/X86ISelLowering.cpp
34269     if (SimplifyDemandedVectorElts(LHS, DemandedElts, LHSUndef, LHSZero, TLO,
34272     if (SimplifyDemandedVectorElts(RHS, DemandedElts, RHSUndef, RHSZero, TLO,
34299     if (SimplifyDemandedVectorElts(Amt, AmtElts, AmtUndef, AmtZero, TLO,
34309     if (SimplifyDemandedVectorElts(Src, DemandedElts, SrcUndef, KnownZero, TLO,
34322       return TLO.CombineTo(Op, Src);
34338         SDValue NewSA = TLO.DAG.getTargetConstant(Diff, dl, MVT::i8);
34339         return TLO.CombineTo(
34340             Op, TLO.DAG.getNode(NewOpc, dl, VT, Src.getOperand(0), NewSA));
34345     if (SimplifyDemandedVectorElts(Src, DemandedSrc, KnownUndef, KnownZero, TLO,
34361       return TLO.CombineTo(Op, Src);
34377         SDValue NewSA = TLO.DAG.getTargetConstant(Diff, dl, MVT::i8);
34378         return TLO.CombineTo(
34379             Op, TLO.DAG.getNode(NewOpc, dl, VT, Src.getOperand(0), NewSA));
34384     if (SimplifyDemandedVectorElts(Src, DemandedSrc, KnownUndef, KnownZero, TLO,
34399     if (SimplifyDemandedVectorElts(Src, SrcElts, SrcUndef, SrcZero, TLO,
34413     if (SimplifyDemandedVectorElts(N0, DemandedLHS, SrcUndef, SrcZero, TLO,
34416     if (SimplifyDemandedVectorElts(N1, DemandedRHS, SrcUndef, SrcZero, TLO,
34426           N0, DemandedSrcBits, DemandedLHS, TLO.DAG, Depth + 1);
34428           N1, DemandedSrcBits, DemandedRHS, TLO.DAG, Depth + 1);
34432         return TLO.CombineTo(Op,
34433                              TLO.DAG.getNode(Opc, SDLoc(Op), VT, NewN0, NewN1));
34447                                    LHSZero, TLO, Depth + 1))
34451                                    RHSZero, TLO, Depth + 1))
34462     if (SimplifyDemandedVectorElts(Src, DemandedSrc, SrcUndef, SrcZero, TLO,
34472                                    SelZero, TLO, Depth + 1))
34478                                    LHSZero, TLO, Depth + 1))
34483                                    RHSZero, TLO, Depth + 1))
34498         Src = widenSubVector(VT.getSimpleVT(), Src, false, Subtarget, TLO.DAG,
34500       return TLO.CombineTo(Op, Src);
34504     if (SimplifyDemandedVectorElts(Src, SrcElts, SrcUndef, SrcZero, TLO,
34512     if (SimplifyDemandedVectorElts(Mask, DemandedElts, MaskUndef, MaskZero, TLO,
34522     if (SimplifyDemandedVectorElts(Mask, DemandedElts, MaskUndef, MaskZero, TLO,
34531     if (SimplifyDemandedVectorElts(Mask, DemandedElts, MaskUndef, MaskZero, TLO,
34555           extractSubVector(Op.getOperand(0), 0, TLO.DAG, DL, ExtSizeInBits);
34557           TLO.DAG.getNode(Opc, DL, Ext0.getValueType(), Ext0);
34558       SDValue UndefVec = TLO.DAG.getUNDEF(VT);
34560           insertSubVector(UndefVec, ExtOp, 0, TLO.DAG, DL, ExtSizeInBits);
34561       return TLO.CombineTo(Op, Insert);
34568         Src = extractSubVector(Src, 0, TLO.DAG, DL, ExtSizeInBits);
34573         Src = TLO.DAG.getNode(X86ISD::SUBV_BROADCAST, DL, SrcVT, Src);
34575       return TLO.CombineTo(Op, insertSubVector(TLO.DAG.getUNDEF(VT), Src, 0,
34575       return TLO.CombineTo(Op, insertSubVector(TLO.DAG.getUNDEF(VT), Src, 0,
34576                                                TLO.DAG, DL, ExtSizeInBits));
34591           extractSubVector(Op.getOperand(0), 0, TLO.DAG, DL, ExtSizeInBits);
34593           TLO.DAG.getNode(Opc, DL, Ext0.getValueType(), Ext0, Op.getOperand(1));
34594       SDValue UndefVec = TLO.DAG.getUNDEF(VT);
34596           insertSubVector(UndefVec, ExtOp, 0, TLO.DAG, DL, ExtSizeInBits);
34597       return TLO.CombineTo(Op, Insert);
34607           SDValue Ext = extractSubVector(Op.getOperand(0), 2, TLO.DAG, DL, 128);
34608           SDValue UndefVec = TLO.DAG.getUNDEF(VT);
34609           SDValue Insert = insertSubVector(UndefVec, Ext, 0, TLO.DAG, DL, 128);
34610           return TLO.CombineTo(Op, Insert);
34632           extractSubVector(Op.getOperand(0), 0, TLO.DAG, DL, ExtSizeInBits);
34634           extractSubVector(Op.getOperand(1), 0, TLO.DAG, DL, ExtSizeInBits);
34635       SDValue ExtOp = TLO.DAG.getNode(Opc, DL, ExtVT, Ext0, Ext1);
34636       SDValue UndefVec = TLO.DAG.getUNDEF(VT);
34638           insertSubVector(UndefVec, ExtOp, 0, TLO.DAG, DL, ExtSizeInBits);
34639       return TLO.CombineTo(Op, Insert);
34649                               OpZero, TLO.DAG, Depth, false))
34671     return TLO.CombineTo(Op, TLO.DAG.getUNDEF(VT));
34671     return TLO.CombineTo(Op, TLO.DAG.getUNDEF(VT));
34675     return TLO.CombineTo(
34676         Op, getZeroVector(VT.getSimpleVT(), Subtarget, TLO.DAG, SDLoc(Op)));
34680       return TLO.CombineTo(Op, TLO.DAG.getBitcast(VT, OpInputs[Src]));
34680       return TLO.CombineTo(Op, TLO.DAG.getBitcast(VT, OpInputs[Src]));
34700                                    TLO, Depth + 1))