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

References

lib/Target/X86/X86ISelLowering.cpp
32325                      (RootVT.is256BitVector() && !Subtarget.hasAVX2());
32334       RootSizeInBits == 512 || (Subtarget.hasVLX() && RootSizeInBits >= 128);
32361       !(Subtarget.hasAVX2() && BaseMask[0] >= -1 && BaseMask[1] >= -1) &&
32409   bool AllowIntDomain = (!FloatDomain || (Depth >= 3)) && Subtarget.hasSSE2() &&
32410                         (!MaskVT.is256BitVector() || Subtarget.hasAVX2());
32437     if ((Subtarget.hasAVX2() || (Subtarget.hasAVX() && 32 <= MaskEltSizeInBits))
32437     if ((Subtarget.hasAVX2() || (Subtarget.hasAVX() && 32 <= MaskEltSizeInBits))
32450         if (Subtarget.hasAVX2()) {
32462                           DL, DAG, Subtarget, Shuffle, ShuffleSrcVT,
32473                                  AllowIntDomain, Subtarget, Shuffle, ShuffleVT,
32488                          NewV2, DL, DAG, Subtarget, Shuffle, ShuffleSrcVT,
32503           NewV2, DL, DAG, Subtarget, Shuffle, ShuffleVT, PermuteImm) &&
32519   if (Subtarget.hasSSE4A() && AllowIntDomain && RootSizeInBits == 128) {
32550   int VariableShuffleDepth = Subtarget.hasFastVariableShuffle() ? 1 : 2;
32559         ((Subtarget.hasAVX2() &&
32561          (Subtarget.hasAVX512() &&
32564          (Subtarget.hasBWI() && MaskVT == MVT::v32i16) ||
32565          (Subtarget.hasBWI() && Subtarget.hasVLX() && MaskVT == MVT::v16i16) ||
32565          (Subtarget.hasBWI() && Subtarget.hasVLX() && MaskVT == MVT::v16i16) ||
32566          (Subtarget.hasVBMI() && MaskVT == MVT::v64i8) ||
32567          (Subtarget.hasVBMI() && Subtarget.hasVLX() && MaskVT == MVT::v32i8))) {
32567          (Subtarget.hasVBMI() && Subtarget.hasVLX() && MaskVT == MVT::v32i8))) {
32577         ((Subtarget.hasAVX512() &&
32580          (Subtarget.hasVLX() &&
32583          (Subtarget.hasBWI() && MaskVT == MVT::v32i16) ||
32584          (Subtarget.hasBWI() && Subtarget.hasVLX() && MaskVT == MVT::v16i16) ||
32584          (Subtarget.hasBWI() && Subtarget.hasVLX() && MaskVT == MVT::v16i16) ||
32585          (Subtarget.hasVBMI() && MaskVT == MVT::v64i8) ||
32586          (Subtarget.hasVBMI() && Subtarget.hasVLX() && MaskVT == MVT::v32i8))) {
32586          (Subtarget.hasVBMI() && Subtarget.hasVLX() && MaskVT == MVT::v32i8))) {
32594       SDValue Zero = getZeroVector(MaskVT, Subtarget, DAG, DL);
32603             DAG, Subtarget))
32608         ((Subtarget.hasAVX512() &&
32611          (Subtarget.hasVLX() &&
32614          (Subtarget.hasBWI() && MaskVT == MVT::v32i16) ||
32615          (Subtarget.hasBWI() && Subtarget.hasVLX() && MaskVT == MVT::v16i16) ||
32615          (Subtarget.hasBWI() && Subtarget.hasVLX() && MaskVT == MVT::v16i16) ||
32616          (Subtarget.hasVBMI() && MaskVT == MVT::v64i8) ||
32617          (Subtarget.hasVBMI() && Subtarget.hasVLX() && MaskVT == MVT::v32i8))) {
32617          (Subtarget.hasVBMI() && Subtarget.hasVLX() && MaskVT == MVT::v32i8))) {
32658       ((MaskVT == MVT::v8f32 && Subtarget.hasAVX()) ||
32659        (MaskVT == MVT::v16f32 && Subtarget.hasAVX512()))) {
32674   if (AllowVariableMask && Subtarget.hasXOP() &&
32713       ((RootVT.is128BitVector() && Subtarget.hasSSSE3()) ||
32714        (RootVT.is256BitVector() && Subtarget.hasAVX2()) ||
32715        (RootVT.is512BitVector() && Subtarget.hasBWI()))) {
32743   if (AllowVariableMask && RootVT.is128BitVector() && Subtarget.hasXOP()) {
32775           DAG, Subtarget))
32780       ((Subtarget.hasAVX512() &&
32783        (Subtarget.hasVLX() &&
32787        (Subtarget.hasBWI() && MaskVT == MVT::v32i16) ||
32788        (Subtarget.hasBWI() && Subtarget.hasVLX() &&
32788        (Subtarget.hasBWI() && Subtarget.hasVLX() &&
32790        (Subtarget.hasVBMI() && MaskVT == MVT::v64i8) ||
32791        (Subtarget.hasVBMI() && Subtarget.hasVLX() &&
32791        (Subtarget.hasVBMI() && Subtarget.hasVLX() &&