LLVM 24.0.0git
llvm::SIInstrFlags Namespace Reference

Namespaces

namespace  DontUseRawTSFlags

Enumerations

enum  ClassFlags : unsigned {
  S_NAN = 1 << 0 , Q_NAN = 1 << 1 , N_INFINITY = 1 << 2 , N_NORMAL = 1 << 3 ,
  N_SUBNORMAL = 1 << 4 , N_ZERO = 1 << 5 , P_ZERO = 1 << 6 , P_SUBNORMAL = 1 << 7 ,
  P_NORMAL = 1 << 8 , P_INFINITY = 1 << 9
}

Functions

constexpr uint64_t getTSFlags (const MCInstrDesc &Desc)
uint64_t getTSFlags (const MCInstrInfo &MII, unsigned Opcode)
uint64_t getTSFlags (const MCInstrInfo &MII, const MCInst &Inst)
template<typename... T>
constexpr bool isSALU (const T &...O)
template<typename... T>
constexpr bool isVALU (const T &...O)
template<typename... T>
constexpr bool isSOP1 (const T &...O)
template<typename... T>
constexpr bool isSOP2 (const T &...O)
template<typename... T>
constexpr bool isSOPC (const T &...O)
template<typename... T>
constexpr bool isSOPK (const T &...O)
template<typename... T>
constexpr bool isSOPP (const T &...O)
template<typename... T>
constexpr bool isVOP1 (const T &...O)
template<typename... T>
constexpr bool isVOP2 (const T &...O)
template<typename... T>
constexpr bool isVOPC (const T &...O)
template<typename... T>
constexpr bool isVOP3 (const T &...O)
template<typename... T>
constexpr bool isVOP3P (const T &...O)
template<typename... T>
constexpr bool isVOP3Like (const T &...O)
template<typename... T>
constexpr bool isVINTRP (const T &...O)
template<typename... T>
constexpr bool isSDWA (const T &...O)
template<typename... T>
constexpr bool isDPP (const T &...O)
template<typename... T>
constexpr bool isTRANS (const T &...O)
template<typename... T>
constexpr bool isMUBUF (const T &...O)
template<typename... T>
constexpr bool isMTBUF (const T &...O)
template<typename... T>
constexpr bool isBuffer (const T &...O)
template<typename... T>
constexpr bool isSMRD (const T &...O)
template<typename... T>
constexpr bool isMIMG (const T &...O)
template<typename... T>
constexpr bool isVIMAGE (const T &...O)
template<typename... T>
constexpr bool isVSAMPLE (const T &...O)
template<typename... T>
constexpr bool isEXP (const T &...O)
template<typename... T>
constexpr bool isFLAT (const T &...O)
template<typename... T>
constexpr bool isDS (const T &...O)
template<typename... T>
constexpr bool isSpill (const T &...O)
template<typename... T>
constexpr bool isLDSDIR (const T &...O)
template<typename... T>
constexpr bool isVINTERP (const T &...O)
template<typename... T>
constexpr bool isWQM (const T &...O)
template<typename... T>
constexpr bool isDisableWQM (const T &...O)
template<typename... T>
constexpr bool isGather4 (const T &...O)
template<typename... T>
constexpr bool usesTENSOR_CNT (const T &...O)
template<typename... T>
constexpr bool isScalarStore (const T &...O)
template<typename... T>
constexpr bool isFixedSize (const T &...O)
template<typename... T>
constexpr bool usesASYNC_CNT (const T &...O)
template<typename... T>
constexpr bool hasVOP3OpSel (const T &...O)
template<typename... T>
constexpr bool isMaybeAtomic (const T &...O)
template<typename... T>
constexpr bool hasFPClamp (const T &...O)
template<typename... T>
constexpr bool hasIntClamp (const T &...O)
template<typename... T>
constexpr bool hasClampLo (const T &...O)
template<typename... T>
constexpr bool hasClampHi (const T &...O)
template<typename... T>
constexpr bool isPacked (const T &...O)
template<typename... T>
constexpr bool isD16Buf (const T &...O)
template<typename... T>
constexpr bool isFlatGlobal (const T &...O)
template<typename... T>
constexpr bool usesFPDPRounding (const T &...O)
template<typename... T>
constexpr bool isFPAtomic (const T &...O)
template<typename... T>
constexpr bool isMAI (const T &...O)
template<typename... T>
constexpr bool isDOT (const T &...O)
template<typename... T>
constexpr bool isFlatScratch (const T &...O)
template<typename... T>
constexpr bool isAtomicNoRet (const T &...O)
template<typename... T>
constexpr bool isAtomicRet (const T &...O)
template<typename... T>
constexpr bool isWMMA (const T &...O)
template<typename... T>
constexpr bool isTiedSourceNotRead (const T &...O)
template<typename... T>
constexpr bool isNeverUniform (const T &...O)
template<typename... T>
constexpr bool isGWS (const T &...O)
template<typename... T>
constexpr bool isSWMMAC (const T &...O)
template<typename... T>
constexpr bool isVOPD3 (const T &...O)
template<typename... T>
constexpr bool usesVM_CNT (const T &...O)
template<typename... T>
constexpr bool usesLGKM_CNT (const T &...O)
template<typename... T>
constexpr bool isAtomic (const T &...O)
template<typename... T>
constexpr bool isSegmentSpecificFLAT (const T &...O)
template<typename... T>
constexpr bool isImage (const T &...O)
template<typename... T>
constexpr bool isVMEM (const T &...O)

Enumeration Type Documentation

◆ ClassFlags

Enumerator
S_NAN 
Q_NAN 
N_INFINITY 
N_NORMAL 
N_SUBNORMAL 
N_ZERO 
P_ZERO 
P_SUBNORMAL 
P_NORMAL 
P_INFINITY 

Definition at line 414 of file SIDefines.h.

Function Documentation

◆ getTSFlags() [1/3]

◆ getTSFlags() [2/3]

uint64_t llvm::SIInstrFlags::getTSFlags ( const MCInstrInfo & MII,
const MCInst & Inst )
inline

◆ getTSFlags() [3/3]

uint64_t llvm::SIInstrFlags::getTSFlags ( const MCInstrInfo & MII,
unsigned Opcode )
inline

Definition at line 203 of file SIDefines.h.

References llvm::MCInstrInfo::get(), and llvm::MCInstrDesc::TSFlags.

◆ hasClampHi()

template<typename... T>
bool llvm::SIInstrFlags::hasClampHi ( const T &... O)
constexpr

◆ hasClampLo()

template<typename... T>
bool llvm::SIInstrFlags::hasClampLo ( const T &... O)
constexpr

◆ hasFPClamp()

template<typename... T>
bool llvm::SIInstrFlags::hasFPClamp ( const T &... O)
constexpr

◆ hasIntClamp()

template<typename... T>
bool llvm::SIInstrFlags::hasIntClamp ( const T &... O)
constexpr

◆ hasVOP3OpSel()

template<typename... T>
bool llvm::SIInstrFlags::hasVOP3OpSel ( const T &... O)
constexpr

Definition at line 323 of file SIDefines.h.

References getTSFlags(), T, and llvm::SIInstrFlags::DontUseRawTSFlags::VOP3_OPSEL.

◆ isAtomic()

template<typename... T>
bool llvm::SIInstrFlags::isAtomic ( const T &... O)
constexpr

◆ isAtomicNoRet()

template<typename... T>
bool llvm::SIInstrFlags::isAtomicNoRet ( const T &... O)
constexpr

◆ isAtomicRet()

template<typename... T>
bool llvm::SIInstrFlags::isAtomicRet ( const T &... O)
constexpr

◆ isBuffer()

◆ isD16Buf()

template<typename... T>
bool llvm::SIInstrFlags::isD16Buf ( const T &... O)
constexpr

◆ isDisableWQM()

template<typename... T>
bool llvm::SIInstrFlags::isDisableWQM ( const T &... O)
constexpr

◆ isDOT()

template<typename... T>
bool llvm::SIInstrFlags::isDOT ( const T &... O)
constexpr

◆ isDPP()

template<typename... T>
bool llvm::SIInstrFlags::isDPP ( const T &... O)
constexpr

◆ isDS()

◆ isEXP()

template<typename... T>
bool llvm::SIInstrFlags::isEXP ( const T &... O)
constexpr

◆ isFixedSize()

template<typename... T>
bool llvm::SIInstrFlags::isFixedSize ( const T &... O)
constexpr

◆ isFLAT()

◆ isFlatGlobal()

template<typename... T>
bool llvm::SIInstrFlags::isFlatGlobal ( const T &... O)
constexpr

◆ isFlatScratch()

template<typename... T>
bool llvm::SIInstrFlags::isFlatScratch ( const T &... O)
constexpr

◆ isFPAtomic()

template<typename... T>
bool llvm::SIInstrFlags::isFPAtomic ( const T &... O)
constexpr

◆ isGather4()

template<typename... T>
bool llvm::SIInstrFlags::isGather4 ( const T &... O)
constexpr

◆ isGWS()

template<typename... T>
bool llvm::SIInstrFlags::isGWS ( const T &... O)
constexpr

◆ isImage()

template<typename... T>
bool llvm::SIInstrFlags::isImage ( const T &... O)
constexpr

Definition at line 404 of file SIDefines.h.

References isMIMG(), isVIMAGE(), isVSAMPLE(), and T.

Referenced by llvm::SIInstrInfo::isImage(), llvm::SIInstrInfo::isImage(), and isVMEM().

◆ isLDSDIR()

template<typename... T>
bool llvm::SIInstrFlags::isLDSDIR ( const T &... O)
constexpr

◆ isMAI()

template<typename... T>
bool llvm::SIInstrFlags::isMAI ( const T &... O)
constexpr

◆ isMaybeAtomic()

template<typename... T>
bool llvm::SIInstrFlags::isMaybeAtomic ( const T &... O)
constexpr

Definition at line 326 of file SIDefines.h.

References getTSFlags(), llvm::SIInstrFlags::DontUseRawTSFlags::maybeAtomic, and T.

◆ isMIMG()

◆ isMTBUF()

template<typename... T>
bool llvm::SIInstrFlags::isMTBUF ( const T &... O)
constexpr

◆ isMUBUF()

template<typename... T>
bool llvm::SIInstrFlags::isMUBUF ( const T &... O)
constexpr

◆ isNeverUniform()

template<typename... T>
bool llvm::SIInstrFlags::isNeverUniform ( const T &... O)
constexpr

◆ isPacked()

template<typename... T>
bool llvm::SIInstrFlags::isPacked ( const T &... O)
constexpr

◆ isSALU()

template<typename... T>
bool llvm::SIInstrFlags::isSALU ( const T &... O)
constexpr

◆ isScalarStore()

template<typename... T>
bool llvm::SIInstrFlags::isScalarStore ( const T &... O)
constexpr

◆ isSDWA()

template<typename... T>
bool llvm::SIInstrFlags::isSDWA ( const T &... O)
constexpr

◆ isSegmentSpecificFLAT()

template<typename... T>
bool llvm::SIInstrFlags::isSegmentSpecificFLAT ( const T &... O)
constexpr

◆ isSMRD()

◆ isSOP1()

template<typename... T>
bool llvm::SIInstrFlags::isSOP1 ( const T &... O)
constexpr

◆ isSOP2()

template<typename... T>
bool llvm::SIInstrFlags::isSOP2 ( const T &... O)
constexpr

◆ isSOPC()

template<typename... T>
bool llvm::SIInstrFlags::isSOPC ( const T &... O)
constexpr

◆ isSOPK()

template<typename... T>
bool llvm::SIInstrFlags::isSOPK ( const T &... O)
constexpr

◆ isSOPP()

template<typename... T>
bool llvm::SIInstrFlags::isSOPP ( const T &... O)
constexpr

◆ isSpill()

template<typename... T>
bool llvm::SIInstrFlags::isSpill ( const T &... O)
constexpr

◆ isSWMMAC()

template<typename... T>
bool llvm::SIInstrFlags::isSWMMAC ( const T &... O)
constexpr

◆ isTiedSourceNotRead()

template<typename... T>
bool llvm::SIInstrFlags::isTiedSourceNotRead ( const T &... O)
constexpr

◆ isTRANS()

template<typename... T>
bool llvm::SIInstrFlags::isTRANS ( const T &... O)
constexpr

◆ isVALU()

template<typename... T>
bool llvm::SIInstrFlags::isVALU ( const T &... O)
constexpr

◆ isVIMAGE()

◆ isVINTERP()

template<typename... T>
bool llvm::SIInstrFlags::isVINTERP ( const T &... O)
constexpr

◆ isVINTRP()

template<typename... T>
bool llvm::SIInstrFlags::isVINTRP ( const T &... O)
constexpr

◆ isVMEM()

template<typename... T>
bool llvm::SIInstrFlags::isVMEM ( const T &... O)
constexpr

Definition at line 408 of file SIDefines.h.

References isFLAT(), isImage(), isMTBUF(), isMUBUF(), and T.

Referenced by llvm::SIInstrInfo::isVMEM(), and llvm::SIInstrInfo::isVMEM().

◆ isVOP1()

template<typename... T>
bool llvm::SIInstrFlags::isVOP1 ( const T &... O)
constexpr

◆ isVOP2()

template<typename... T>
bool llvm::SIInstrFlags::isVOP2 ( const T &... O)
constexpr

◆ isVOP3()

template<typename... T>
bool llvm::SIInstrFlags::isVOP3 ( const T &... O)
constexpr

◆ isVOP3Like()

template<typename... T>
bool llvm::SIInstrFlags::isVOP3Like ( const T &... O)
constexpr

◆ isVOP3P()

template<typename... T>
bool llvm::SIInstrFlags::isVOP3P ( const T &... O)
constexpr

◆ isVOPC()

template<typename... T>
bool llvm::SIInstrFlags::isVOPC ( const T &... O)
constexpr

◆ isVOPD3()

template<typename... T>
bool llvm::SIInstrFlags::isVOPD3 ( const T &... O)
constexpr

Definition at line 386 of file SIDefines.h.

References getTSFlags(), T, and llvm::SIInstrFlags::DontUseRawTSFlags::VOPD3.

Referenced by llvm::AMDGPU::getVOPDInstInfo().

◆ isVSAMPLE()

◆ isWMMA()

template<typename... T>
bool llvm::SIInstrFlags::isWMMA ( const T &... O)
constexpr

◆ isWQM()

template<typename... T>
bool llvm::SIInstrFlags::isWQM ( const T &... O)
constexpr

◆ usesASYNC_CNT()

template<typename... T>
bool llvm::SIInstrFlags::usesASYNC_CNT ( const T &... O)
constexpr

◆ usesFPDPRounding()

template<typename... T>
bool llvm::SIInstrFlags::usesFPDPRounding ( const T &... O)
constexpr

◆ usesLGKM_CNT()

template<typename... T>
bool llvm::SIInstrFlags::usesLGKM_CNT ( const T &... O)
constexpr

◆ usesTENSOR_CNT()

template<typename... T>
bool llvm::SIInstrFlags::usesTENSOR_CNT ( const T &... O)
constexpr

◆ usesVM_CNT()

template<typename... T>
bool llvm::SIInstrFlags::usesVM_CNT ( const T &... O)
constexpr