Lines Matching refs:Predicate

1605 // Predicate helper class
1609 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::SOUTHERN_ISLANDS">,
1613 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::SOUTHERN_ISLANDS ||"
1618 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::SOUTHERN_ISLANDS ||"
1624 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::SOUTHERN_ISLANDS ||"
1630 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::SEA_ISLANDS">,
1634 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::SEA_ISLANDS ||"
1639 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::SEA_ISLANDS ||"
1645 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::SEA_ISLANDS ||"
1651 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::SOUTHERN_ISLANDS ||"
1658 Predicate<"!Subtarget->hasGFX90AInsts() &&"
1666 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::SOUTHERN_ISLANDS ||"
1674 Predicate<"Subtarget->getGeneration() <= AMDGPUSubtarget::GFX11">,
1678 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::SEA_ISLANDS ||"
1685 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::VOLCANIC_ISLANDS ||"
1692 Predicate<"Subtarget->getGeneration() >= AMDGPUSubtarget::SEA_ISLANDS">,
1696 Predicate<"Subtarget->getGeneration() >= AMDGPUSubtarget::VOLCANIC_ISLANDS">,
1699 def isGFX8Only : Predicate<"Subtarget->getGeneration() =="
1704 Predicate<"Subtarget->getGeneration() >= AMDGPUSubtarget::GFX9">,
1708 Predicate<"Subtarget->getGeneration() < AMDGPUSubtarget::GFX9">;
1710 def isGFX9Only : Predicate <
1715 Predicate<"Subtarget->isGCN3Encoding() && !Subtarget->hasGFX90AInsts()">,
1719 Predicate<"Subtarget->hasGFX90AInsts()">,
1723 Predicate<"!Subtarget->hasGFX90AInsts()">,
1727 Predicate<"!Subtarget->hasGFX90AInsts() &&"
1733 Predicate<"Subtarget->hasGFX90AInsts() && !Subtarget->hasGFX940Insts()">,
1737 Predicate<"Subtarget->hasMAIInsts() && !Subtarget->hasGFX940Insts()">,
1741 Predicate<"Subtarget->hasGFX940Insts()">,
1745 Predicate<"!Subtarget->hasGFX940Insts() &&"
1751 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::VOLCANIC_ISLANDS ||"
1756 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::GFX10">,
1760 Predicate<"Subtarget->getGeneration() >= AMDGPUSubtarget::GFX10">,
1764 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::GFX10 ||"
1769 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::GFX10 &&"
1774 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::GFX9 ||"
1779 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::VOLCANIC_ISLANDS ||"
1785 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::GFX11">,
1789 Predicate<"Subtarget->getGeneration() >= AMDGPUSubtarget::GFX11">,
1793 Predicate<"Subtarget->getGeneration() == AMDGPUSubtarget::GFX12">,
1797 Predicate<"Subtarget->getGeneration() >= AMDGPUSubtarget::GFX12">,
1800 def HasFlatAddressSpace : Predicate<"Subtarget->hasFlatAddressSpace()">,
1803 def HasFlatGlobalInsts : Predicate<"Subtarget->hasFlatGlobalInsts()">,
1805 def HasFlatScratchInsts : Predicate<"Subtarget->hasFlatScratchInsts()">,
1807 def HasScalarFlatScratchInsts : Predicate<"Subtarget->hasScalarFlatScratchInsts()">,
1809 def HasD16LoadStore : Predicate<"Subtarget->hasD16LoadStore()">,
1812 def HasFlatScratchSTMode : Predicate<"Subtarget->hasFlatScratchSTMode()">,
1814 def HasFlatScratchSVSMode : Predicate<"Subtarget->hasFlatScratchSVSMode()">,
1817 def HasGFX10_AEncoding : Predicate<"Subtarget->hasGFX10_AEncoding()">,
1820 def HasGFX10_BEncoding : Predicate<"Subtarget->hasGFX10_BEncoding()">,
1823 def HasUnpackedD16VMem : Predicate<"Subtarget->hasUnpackedD16VMem()">,
1825 def HasPackedD16VMem : Predicate<"!Subtarget->hasUnpackedD16VMem()">,
1828 def HasRestrictedSOffset : Predicate<"Subtarget->hasRestrictedSOffset()">,
1830 def HasUnrestrictedSOffset : Predicate<"!Subtarget->hasRestrictedSOffset()">,
1834 Predicate<"Subtarget->d16PreservesUnusedBits()">,
1837 def LDSRequiresM0Init : Predicate<"Subtarget->ldsRequiresM0Init()">;
1838 def NotLDSRequiresM0Init : Predicate<"!Subtarget->ldsRequiresM0Init()">;
1840 def HasDSAddTid : Predicate<"Subtarget->getGeneration() >= AMDGPUSubtarget::GFX9">,
1843 def HasLDSFPAtomicAdd : Predicate<"Subtarget->hasLDSFPAtomicAdd()">,
1846 def HasAddNoCarryInsts : Predicate<"Subtarget->hasAddNoCarry()">,
1849 def NotHasAddNoCarryInsts : Predicate<"!Subtarget->hasAddNoCarry()">;
1851 def Has16BitInsts : Predicate<"Subtarget->has16BitInsts()">,
1854 def HasTrue16BitInsts : Predicate<"Subtarget->hasTrue16BitInsts()">,
1856 def NotHasTrue16BitInsts : Predicate<"!Subtarget->hasTrue16BitInsts()">;
1862 def UseRealTrue16Insts : Predicate<"Subtarget->useRealTrue16Insts()">,
1864 def UseFakeTrue16Insts : Predicate<"Subtarget->hasTrue16BitInsts() && "
1867 def HasVOP3PInsts : Predicate<"Subtarget->hasVOP3PInsts()">,
1870 def NotHasMed3_16 : Predicate<"!Subtarget->hasMed3_16()">;
1872 def HasMinMaxDenormModes : Predicate<"Subtarget->supportsMinMaxDenormModes()">;
1873 def NotHasMinMaxDenormModes : Predicate<"!Subtarget->supportsMinMaxDenormModes()">;
1875 def HasFminFmaxLegacy : Predicate<"Subtarget->hasFminFmaxLegacy()">;
1877 def HasSDWA : Predicate<"Subtarget->hasSDWA()">,
1881 Predicate<"Subtarget->hasSDWA()">,
1885 Predicate<"Subtarget->hasSDWA()">,
1888 def HasDPP : Predicate<"Subtarget->hasDPP()">,
1891 def HasDPP8 : Predicate<"Subtarget->hasDPP8()">,
1894 def HasDPALU_DPP : Predicate<"Subtarget->hasDPALU_DPP()">,
1897 def HasPackedFP32Ops : Predicate<"Subtarget->hasPackedFP32Ops()">,
1900 def HasPkMovB32 : Predicate<"Subtarget->hasPkMovB32()">,
1904 Predicate<"Subtarget->hasFmaakFmamkF32Insts()">,
1907 def HasImageInsts : Predicate<"Subtarget->hasImageInsts()">,
1910 def HasExtendedImageInsts : Predicate<"Subtarget->hasExtendedImageInsts()">,
1913 def HasR128A16 : Predicate<"Subtarget->hasR128A16()">,
1916 def HasA16 : Predicate<"Subtarget->hasA16()">,
1919 def HasG16 : Predicate<"Subtarget->hasG16()">,
1922 def HasDPP16 : Predicate<"Subtarget->hasDPP()">,
1925 def HasIntClamp : Predicate<"Subtarget->hasIntClamp()">,
1928 def HasMadMixInsts : Predicate<"Subtarget->hasMadMixInsts()">,
1931 def HasScalarStores : Predicate<"Subtarget->hasScalarStores()">,
1934 def HasScalarAtomics : Predicate<"Subtarget->hasScalarAtomics()">,
1937 def HasNoSdstCMPX : Predicate<"Subtarget->hasNoSdstCMPX()">,
1940 def HasSdstCMPX : Predicate<"!Subtarget->hasNoSdstCMPX()">,
1943 def has16BankLDS : Predicate<"Subtarget->getLDSBankCount() == 16">;
1944 def has32BankLDS : Predicate<"Subtarget->getLDSBankCount() == 32">;
1945 def HasVGPRIndexMode : Predicate<"Subtarget->hasVGPRIndexMode()">,
1947 def HasMovrel : Predicate<"Subtarget->hasMovrel()">,
1950 def HasFmaMixInsts : Predicate<"Subtarget->hasFmaMixInsts()">,
1953 def HasDLInsts : Predicate<"Subtarget->hasDLInsts()">,
1956 def HasFmacF64Inst : Predicate<"Subtarget->hasFmacF64Inst()">,
1959 def HasDot1Insts : Predicate<"Subtarget->hasDot1Insts()">,
1962 def HasDot2Insts : Predicate<"Subtarget->hasDot2Insts()">,
1965 def HasDot3Insts : Predicate<"Subtarget->hasDot3Insts()">,
1968 def HasDot4Insts : Predicate<"Subtarget->hasDot4Insts()">,
1971 def HasDot5Insts : Predicate<"Subtarget->hasDot5Insts()">,
1974 def HasDot6Insts : Predicate<"Subtarget->hasDot6Insts()">,
1977 def HasDot7Insts : Predicate<"Subtarget->hasDot7Insts()">,
1980 def HasDot8Insts : Predicate<"Subtarget->hasDot8Insts()">,
1983 def HasDot9Insts : Predicate<"Subtarget->hasDot9Insts()">,
1986 def HasDot10Insts : Predicate<"Subtarget->hasDot10Insts()">,
1989 def HasGetWaveIdInst : Predicate<"Subtarget->hasGetWaveIdInst()">,
1992 def HasMAIInsts : Predicate<"Subtarget->hasMAIInsts()">,
1995 def HasSMemRealTime : Predicate<"Subtarget->hasSMemRealTime()">,
1998 def HasSMemTimeInst : Predicate<"Subtarget->hasSMemTimeInst()">,
2001 def HasShaderCyclesRegister : Predicate<"Subtarget->hasShaderCyclesRegister()">,
2004 def HasShaderCyclesHiLoRegisters : Predicate<"Subtarget->hasShaderCyclesHiLoRegisters()">;
2006 def HasFP8Insts : Predicate<"Subtarget->hasFP8Insts()">,
2009 def HasFP8ConversionInsts : Predicate<"Subtarget->hasFP8ConversionInsts()">,
2012 def HasPkFmacF16Inst : Predicate<"Subtarget->hasPkFmacF16Inst()">,
2015 def HasMadMacF32Insts : Predicate<"Subtarget->hasMadMacF32Insts()">,
2018 def HasFmaLegacy32 : Predicate<"Subtarget->hasGFX10_3Insts()">,
2021 def HasAtomicDsPkAdd16Insts : Predicate<"Subtarget->hasAtomicDsPkAdd16Insts()">,
2024 def HasAtomicFlatPkAdd16Insts : Predicate<"Subtarget->hasAtomicFlatPkAdd16Insts()">,
2027 def HasAtomicFaddRtnInsts : Predicate<"Subtarget->hasAtomicFaddRtnInsts()">,
2029 def HasAtomicFaddNoRtnInsts : Predicate<"Subtarget->hasAtomicFaddNoRtnInsts()">,
2032 …: Predicate<"Subtarget->hasAtomicBufferGlobalPkAddF16NoRtnInsts() || Subtarget->hasAtomicBufferGlo…
2035 : Predicate<"Subtarget->hasAtomicBufferGlobalPkAddF16Insts()">,
2038 : Predicate<"Subtarget->hasAtomicGlobalPkAddBF16Inst()">,
2041 : Predicate<"Subtarget->hasFlatAtomicFaddF32Inst()">,
2045 : Predicate<"Subtarget->hasDefaultComponentZero()">,
2048 : Predicate<"Subtarget->hasDefaultComponentBroadcast()">,
2051 def HasDsSrc2Insts : Predicate<"!Subtarget->hasDsSrc2Insts()">,
2054 def EnableLateCFGStructurize : Predicate<
2057 def EnableFlatScratch : Predicate<"Subtarget->enableFlatScratch()">;
2059 def DisableFlatScratch : Predicate<"!Subtarget->enableFlatScratch()">;
2061 def HasUnalignedAccessMode : Predicate<"Subtarget->hasUnalignedAccessMode()">,
2064 def HasMADIntraFwdBug : Predicate<"Subtarget->hasMADIntraFwdBug()">;
2066 def HasNotMADIntraFwdBug : Predicate<"!Subtarget->hasMADIntraFwdBug()">;
2068 def HasSALUFloatInsts : Predicate<"Subtarget->hasSALUFloatInsts()">,
2071 def HasVGPRSingleUseHintInsts : Predicate<"Subtarget->hasVGPRSingleUseHintInsts()">,
2074 def HasPseudoScalarTrans : Predicate<"Subtarget->hasPseudoScalarTrans()">,
2077 def HasGDS : Predicate<"Subtarget->hasGDS()">;
2079 def HasGWS : Predicate<"Subtarget->hasGWS()">;
2081 def HasCvtFP8VOP1Bug : Predicate<"Subtarget->hasCvtFP8VOP1Bug()">;
2082 def HasNoCvtFP8VOP1Bug : Predicate<"!Subtarget->hasCvtFP8VOP1Bug()">;
2084 def HasAtomicCSubNoRtnInsts : Predicate<"Subtarget->hasAtomicCSubNoRtnInsts()">;
2086 def HasScalarDwordx3Loads : Predicate<"Subtarget->hasScalarDwordx3Loads()">;