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

References

lib/Target/X86/X86TargetTransformInfo.cpp
   65   return ST->hasPOPCNT() ? TTI::PSK_FastHardware : TTI::PSK_Software;
  121   if (Vector && !ST->hasSSE1())
  124   if (ST->is64Bit()) {
  125     if (Vector && ST->hasAVX512())
  133   unsigned PreferVectorWidth = ST->getPreferVectorWidth();
  135     if (ST->hasAVX512() && PreferVectorWidth >= 512)
  137     if (ST->hasAVX() && PreferVectorWidth >= 256)
  139     if (ST->hasSSE1() && PreferVectorWidth >= 128)
  144   if (ST->is64Bit())
  161   if (ST->isAtom())
  166   if (ST->hasAVX())
  191   if (ST->isGLM())
  220   if (ST->isSLM()) {
  296       ST->hasBWI()) {
  309       ST->hasAVX512()) {
  324       ST->hasAVX2()) {
  342       ST->hasSSE2() && !ST->hasXOP()) {
  342       ST->hasSSE2() && !ST->hasXOP()) {
  361       ST->hasBWI()) {
  376       ST->hasAVX512()) {
  399       ST->hasAVX2()) {
  433       ST->hasSSE2()) {
  435     if (ISD == ISD::SDIV && LT.second == MVT::v8i32 && ST->hasAVX())
  437     if (ISD == ISD::SREM && LT.second == MVT::v8i32 && ST->hasAVX())
  439     if (ISD == ISD::SDIV && LT.second == MVT::v4i32 && ST->hasSSE41())
  441     if (ISD == ISD::SREM && LT.second == MVT::v4i32 && ST->hasSSE41())
  455   if (ST->hasAVX2() &&
  477   if (ST->hasSSE2() &&
  492   if (ST->hasDQI())
  519   if (ST->hasBWI())
  551   if (ST->hasAVX512())
  571   if (ST->hasAVX2()) {
  615   if (ST->hasXOP()) {
  644   if (ST->hasSSE2() &&
  649     if (ISD == ISD::SRA && LT.second == MVT::v4i64 && ST->hasAVX2())
  662     if (((VT == MVT::v8i16 || VT == MVT::v4i32) && ST->hasSSE2()) ||
  663         ((VT == MVT::v16i16 || VT == MVT::v8i32) && ST->hasAVX()))
  710   if (ST->hasAVX2())
  746   if (ST->hasAVX())
  772   if (ST->hasSSE42())
  801   if (ST->hasSSE41())
  843   if (ST->hasSSE2())
  866   if (ST->hasSSE1())
  940         if (SubTp->getPrimitiveSizeInBits() >= 32 || ST->hasSSSE3())
  999   if (ST->hasVBMI())
 1026   if (ST->hasBWI())
 1070   if (ST->hasAVX512())
 1111   if (ST->hasAVX2())
 1133   if (ST->hasXOP())
 1180   if (ST->hasAVX())
 1193   if (ST->hasSSE41())
 1214   if (ST->hasSSSE3())
 1253   if (ST->hasSSE2())
 1265   if (ST->hasSSE1())
 1630   if (ST->hasSSE2() && !ST->hasAVX()) {
 1630   if (ST->hasSSE2() && !ST->hasAVX()) {
 1651     if (ST->hasBWI())
 1656     if (ST->hasDQI())
 1661     if (ST->hasAVX512())
 1667   if (ST->hasAVX2()) {
 1673   if (ST->hasAVX()) {
 1679   if (ST->hasSSE41()) {
 1685   if (ST->hasSSE2()) {
 1708         !((ST->hasXOP() && (!ST->hasAVX2() || MTy.is128BitVector())) ||
 1708         !((ST->hasXOP() && (!ST->hasAVX2() || MTy.is128BitVector())) ||
 1709           (ST->hasAVX512() && 32 <= MTy.getScalarSizeInBits()) ||
 1710           ST->hasBWI())) {
 1729         if ((ST->hasSSE41() && MTy.getScalarSizeInBits() == 32) ||
 1730             (ST->hasSSE2() && MTy.getScalarSizeInBits() < 32)) {
 1836   if (ST->isSLM())
 1840   if (ST->hasBWI())
 1844   if (ST->hasAVX512())
 1848   if (ST->hasAVX2())
 1852   if (ST->hasAVX())
 1856   if (ST->hasSSE42())
 1860   if (ST->hasSSE41())
 1864   if (ST->hasSSE2())
 1868   if (ST->hasSSE1())
 2202     if (ST->isGLM())
 2206     if (ST->isSLM())
 2210     if (ST->hasCDI())
 2214     if (ST->hasBWI())
 2218     if (ST->hasAVX512())
 2222     if (ST->hasXOP())
 2226     if (ST->hasAVX2())
 2230     if (ST->hasAVX())
 2234     if (ST->hasSSE42())
 2238     if (ST->hasSSSE3())
 2242     if (ST->hasSSE2())
 2246     if (ST->hasSSE1())
 2250     if (ST->hasLZCNT()) {
 2251       if (ST->is64Bit())
 2259     if (ST->hasPOPCNT()) {
 2260       if (ST->is64Bit())
 2270     if (ST->is64Bit())
 2357     if (ST->hasAVX512())
 2361     if (ST->hasXOP())
 2365     if (ST->is64Bit())
 2445   if (LT.second.getStoreSize() == 32 && ST->isUnalignedMem32Slow())
 2500   if (!ST->hasAVX512())
 2598       if (ST->hasAVX())
 2602       if (ST->hasSSE2())
 2606       if (ST->hasAVX())
 2610       if (ST->hasSSE2())
 2621     if (ST->hasAVX())
 2625     if (ST->hasSSE2())
 2629     if (ST->hasAVX())
 2633     if (ST->hasSSE2())
 2669     if (ST->hasAVX2())
 2672     if (ST->hasAVX())
 2675     if (ST->hasSSE2())
 2852     if (ST->hasAVX512())
 2856     if (ST->hasAVX2())
 2860     if (ST->hasAVX())
 2864     if (ST->hasSSE42())
 2868     if (ST->hasSSE41())
 2872     if (ST->hasSSE2())
 2876     if (ST->hasSSE1())
 2880     if (ST->hasAVX512())
 2885     if (ST->hasAVX2())
 2889     if (ST->hasAVX())
 2893     if (ST->hasSSE42())
 2897     if (ST->hasSSE41())
 2901     if (ST->hasSSE2())
 2905     if (ST->hasSSE1())
 3146   unsigned IndexSize = (ST->hasAVX512() && VF >= 16)
 3165                              ? ST->getGatherOverhead()
 3166                              : ST->getScatterOverhead();
 3237   if (ST->hasAVX512() && (VF == 2 || (VF == 4 && !ST->hasVLX())))
 3237   if (ST->hasAVX512() && (VF == 2 || (VF == 4 && !ST->hasVLX())))
 3259   return ST->hasMacroFusion() || ST->hasBranchFusion();
 3259   return ST->hasMacroFusion() || ST->hasBranchFusion();
 3263   if (!ST->hasAVX())
 3282          ((IntWidth == 8 || IntWidth == 16) && ST->hasBWI());
 3295     return DataSize == 16 ?  ST->hasSSE1() : ST->hasAVX2();
 3295     return DataSize == 16 ?  ST->hasSSE1() : ST->hasAVX2();
 3305   if (ST->hasSSE4A() && (DataType->isFloatTy() || DataType->isDoubleTy()))
 3318     return ST->hasAVX();
 3320     return ST->hasSSE1();
 3328   if (!ST->hasAVX512())
 3345          ((IntWidth == 8 || IntWidth == 16) && ST->hasVBMI2());
 3356   if (!(ST->hasAVX512() || (ST->hasFastGather() && ST->hasAVX2())))
 3356   if (!(ST->hasAVX512() || (ST->hasFastGather() && ST->hasAVX2())))
 3356   if (!(ST->hasAVX512() || (ST->hasFastGather() && ST->hasAVX2())))
 3392   if (!ST->hasAVX512())
 3445     const unsigned PreferredWidth = ST->getPreferVectorWidth();
 3446     if (PreferredWidth >= 512 && ST->hasAVX512()) Options.LoadSizes.push_back(64);
 3447     if (PreferredWidth >= 256 && ST->hasAVX2()) Options.LoadSizes.push_back(32);
 3448     if (PreferredWidth >= 128 && ST->hasSSE2()) Options.LoadSizes.push_back(16);
 3453   if (ST->is64Bit()) {
 3466   return !(ST->isAtom());
 3738   if (ST->hasAVX512() && isSupportedOnAVX512(VecTy, ST->hasBWI()))
 3738   if (ST->hasAVX512() && isSupportedOnAVX512(VecTy, ST->hasBWI()))
 3742   if (ST->hasAVX2())
lib/Target/X86/X86TargetTransformInfo.h
   35   const X86Subtarget *getST() const { return ST; }
  101         TLI(ST->getTargetLowering()) {}