LLVM 22.0.0git
llvm::nvvm Namespace Reference

Enumerations

enum class  TMAReductionOp : uint8_t {
  ADD = 0 , MIN = 1 , MAX = 2 , INC = 3 ,
  DEC = 4 , AND = 5 , OR = 6 , XOR = 7
}
enum class  CTAGroupKind : uint8_t { CG_NONE = 0 , CG_1 = 1 , CG_2 = 2 }
enum class  Tcgen05MMAKind : uint8_t { F16 = 0 , TF32 = 1 , F8F6F4 = 2 , I8 = 3 }
enum class  Tcgen05CollectorUsageOp : uint8_t { DISCARD = 0 , LASTUSE = 1 , FILL = 2 , USE = 3 }
enum class  TensormapElemType : uint8_t {
  U8 = 0 , U16 = 1 , U32 = 2 , S32 = 3 ,
  U64 = 4 , S64 = 5 , F16 = 6 , F32 = 7 ,
  F32_FTZ = 8 , F64 = 9 , BF16 = 10 , TF32 = 11 ,
  TF32_FTZ = 12 , B4x16 = 13 , B4x16_p64 = 14 , B6x16_p32 = 15
}
enum class  TensormapInterleaveLayout : uint8_t { NO_INTERLEAVE = 0 , INTERLEAVE_16B = 1 , INTERLEAVE_32B = 2 }
enum class  TensormapSwizzleMode : uint8_t {
  NO_SWIZZLE = 0 , SWIZZLE_32B = 1 , SWIZZLE_64B = 2 , SWIZZLE_128B = 3 ,
  SWIZZLE_96B = 4
}
enum class  TensormapSwizzleAtomicity : uint8_t { SWIZZLE_ATOMICITY_16B = 0 , SWIZZLE_ATOMICITY_32B = 1 , SWIZZLE_ATOMICITY_32B_FLIP_8B = 2 , SWIZZLE_ATOMICITY_64B = 3 }
enum class  TensormapFillMode : uint8_t { ZERO_FILL = 0 , OOB_NAN_FILL = 1 }

Functions

void printTcgen05MMAKind (raw_ostream &OS, const Constant *ImmArgVal)
void printTcgen05CollectorUsageOp (raw_ostream &OS, const Constant *ImmArgVal)
void printTensormapElemType (raw_ostream &OS, const Constant *ImmArgVal)
void printTensormapInterleaveLayout (raw_ostream &OS, const Constant *ImmArgVal)
void printTensormapSwizzleMode (raw_ostream &OS, const Constant *ImmArgVal)
void printTensormapSwizzleAtomicity (raw_ostream &OS, const Constant *ImmArgVal)
void printTensormapFillMode (raw_ostream &OS, const Constant *ImmArgVal)
bool FPToIntegerIntrinsicShouldFTZ (Intrinsic::ID IntrinsicID)
bool FPToIntegerIntrinsicResultIsSigned (Intrinsic::ID IntrinsicID)
bool FPToIntegerIntrinsicNaNZero (Intrinsic::ID IntrinsicID)
APFloat::roundingMode GetFPToIntegerRoundingMode (Intrinsic::ID IntrinsicID)
bool FMinFMaxShouldFTZ (Intrinsic::ID IntrinsicID)
bool FMinFMaxPropagatesNaNs (Intrinsic::ID IntrinsicID)
bool FMinFMaxIsXorSignAbs (Intrinsic::ID IntrinsicID)
bool UnaryMathIntrinsicShouldFTZ (Intrinsic::ID IntrinsicID)
bool RCPShouldFTZ (Intrinsic::ID IntrinsicID)
APFloat::roundingMode GetRCPRoundingMode (Intrinsic::ID IntrinsicID)
DenormalMode GetNVVMDenormMode (bool ShouldFTZ)
bool FAddShouldFTZ (Intrinsic::ID IntrinsicID)
APFloat::roundingMode GetFAddRoundingMode (Intrinsic::ID IntrinsicID)
bool FMulShouldFTZ (Intrinsic::ID IntrinsicID)
APFloat::roundingMode GetFMulRoundingMode (Intrinsic::ID IntrinsicID)
bool FDivShouldFTZ (Intrinsic::ID IntrinsicID)
APFloat::roundingMode GetFDivRoundingMode (Intrinsic::ID IntrinsicID)
bool FMAShouldFTZ (Intrinsic::ID IntrinsicID)
APFloat::roundingMode GetFMARoundingMode (Intrinsic::ID IntrinsicID)

Enumeration Type Documentation

◆ CTAGroupKind

enum class llvm::nvvm::CTAGroupKind : uint8_t
strong
Enumerator
CG_NONE 
CG_1 
CG_2 

Definition at line 47 of file NVVMIntrinsicUtils.h.

◆ Tcgen05CollectorUsageOp

Enumerator
DISCARD 
LASTUSE 
FILL 
USE 

Definition at line 55 of file NVVMIntrinsicUtils.h.

◆ Tcgen05MMAKind

enum class llvm::nvvm::Tcgen05MMAKind : uint8_t
strong
Enumerator
F16 
TF32 
F8F6F4 
I8 

Definition at line 53 of file NVVMIntrinsicUtils.h.

◆ TensormapElemType

Enumerator
U8 
U16 
U32 
S32 
U64 
S64 
F16 
F32 
F32_FTZ 
F64 
BF16 
TF32 
TF32_FTZ 
B4x16 
B4x16_p64 
B6x16_p32 

Definition at line 62 of file NVVMIntrinsicUtils.h.

◆ TensormapFillMode

Enumerator
ZERO_FILL 
OOB_NAN_FILL 

Definition at line 102 of file NVVMIntrinsicUtils.h.

◆ TensormapInterleaveLayout

Enumerator
NO_INTERLEAVE 
INTERLEAVE_16B 
INTERLEAVE_32B 

Definition at line 81 of file NVVMIntrinsicUtils.h.

◆ TensormapSwizzleAtomicity

Enumerator
SWIZZLE_ATOMICITY_16B 
SWIZZLE_ATOMICITY_32B 
SWIZZLE_ATOMICITY_32B_FLIP_8B 
SWIZZLE_ATOMICITY_64B 

Definition at line 95 of file NVVMIntrinsicUtils.h.

◆ TensormapSwizzleMode

Enumerator
NO_SWIZZLE 
SWIZZLE_32B 
SWIZZLE_64B 
SWIZZLE_128B 
SWIZZLE_96B 

Definition at line 87 of file NVVMIntrinsicUtils.h.

◆ TMAReductionOp

enum class llvm::nvvm::TMAReductionOp : uint8_t
strong
Enumerator
ADD 
MIN 
MAX 
INC 
DEC 
AND 
OR 
XOR 

Definition at line 33 of file NVVMIntrinsicUtils.h.

Function Documentation

◆ FAddShouldFTZ()

bool llvm::nvvm::FAddShouldFTZ ( Intrinsic::ID IntrinsicID)
inline

Definition at line 548 of file NVVMIntrinsicUtils.h.

References llvm_unreachable.

◆ FDivShouldFTZ()

bool llvm::nvvm::FDivShouldFTZ ( Intrinsic::ID IntrinsicID)
inline

Definition at line 634 of file NVVMIntrinsicUtils.h.

References llvm_unreachable.

◆ FMAShouldFTZ()

bool llvm::nvvm::FMAShouldFTZ ( Intrinsic::ID IntrinsicID)
inline

Definition at line 677 of file NVVMIntrinsicUtils.h.

References llvm_unreachable.

◆ FMinFMaxIsXorSignAbs()

bool llvm::nvvm::FMinFMaxIsXorSignAbs ( Intrinsic::ID IntrinsicID)
inline

Definition at line 442 of file NVVMIntrinsicUtils.h.

References llvm_unreachable.

◆ FMinFMaxPropagatesNaNs()

bool llvm::nvvm::FMinFMaxPropagatesNaNs ( Intrinsic::ID IntrinsicID)
inline

Definition at line 413 of file NVVMIntrinsicUtils.h.

References llvm_unreachable.

◆ FMinFMaxShouldFTZ()

bool llvm::nvvm::FMinFMaxShouldFTZ ( Intrinsic::ID IntrinsicID)
inline

Definition at line 384 of file NVVMIntrinsicUtils.h.

References llvm_unreachable.

◆ FMulShouldFTZ()

bool llvm::nvvm::FMulShouldFTZ ( Intrinsic::ID IntrinsicID)
inline

Definition at line 591 of file NVVMIntrinsicUtils.h.

References llvm_unreachable.

◆ FPToIntegerIntrinsicNaNZero()

bool llvm::nvvm::FPToIntegerIntrinsicNaNZero ( Intrinsic::ID IntrinsicID)
inline

Definition at line 250 of file NVVMIntrinsicUtils.h.

References llvm_unreachable.

◆ FPToIntegerIntrinsicResultIsSigned()

bool llvm::nvvm::FPToIntegerIntrinsicResultIsSigned ( Intrinsic::ID IntrinsicID)
inline

Definition at line 184 of file NVVMIntrinsicUtils.h.

References llvm_unreachable.

◆ FPToIntegerIntrinsicShouldFTZ()

bool llvm::nvvm::FPToIntegerIntrinsicShouldFTZ ( Intrinsic::ID IntrinsicID)
inline

Definition at line 117 of file NVVMIntrinsicUtils.h.

References llvm_unreachable.

◆ GetFAddRoundingMode()

◆ GetFDivRoundingMode()

◆ GetFMARoundingMode()

◆ GetFMulRoundingMode()

◆ GetFPToIntegerRoundingMode()

◆ GetNVVMDenormMode()

DenormalMode llvm::nvvm::GetNVVMDenormMode ( bool ShouldFTZ)
inline

◆ GetRCPRoundingMode()

◆ printTcgen05CollectorUsageOp()

void llvm::nvvm::printTcgen05CollectorUsageOp ( raw_ostream & OS,
const Constant * ImmArgVal )

Definition at line 41 of file NVVMIntrinsicUtils.cpp.

References DISCARD, llvm::dyn_cast(), FILL, LASTUSE, llvm_unreachable, and USE.

◆ printTcgen05MMAKind()

void llvm::nvvm::printTcgen05MMAKind ( raw_ostream & OS,
const Constant * ImmArgVal )

Definition at line 19 of file NVVMIntrinsicUtils.cpp.

References llvm::dyn_cast(), F16, F8F6F4, I8, llvm_unreachable, and TF32.

◆ printTensormapElemType()

void llvm::nvvm::printTensormapElemType ( raw_ostream & OS,
const Constant * ImmArgVal )

Definition at line 64 of file NVVMIntrinsicUtils.cpp.

References B6x16_p32, and llvm::dyn_cast().

◆ printTensormapFillMode()

void llvm::nvvm::printTensormapFillMode ( raw_ostream & OS,
const Constant * ImmArgVal )

Definition at line 124 of file NVVMIntrinsicUtils.cpp.

References llvm::dyn_cast(), and ZERO_FILL.

◆ printTensormapInterleaveLayout()

void llvm::nvvm::printTensormapInterleaveLayout ( raw_ostream & OS,
const Constant * ImmArgVal )

Definition at line 78 of file NVVMIntrinsicUtils.cpp.

References llvm::dyn_cast(), INTERLEAVE_16B, INTERLEAVE_32B, and NO_INTERLEAVE.

◆ printTensormapSwizzleAtomicity()

void llvm::nvvm::printTensormapSwizzleAtomicity ( raw_ostream & OS,
const Constant * ImmArgVal )

Definition at line 110 of file NVVMIntrinsicUtils.cpp.

References llvm::dyn_cast(), and SWIZZLE_ATOMICITY_64B.

◆ printTensormapSwizzleMode()

void llvm::nvvm::printTensormapSwizzleMode ( raw_ostream & OS,
const Constant * ImmArgVal )

Definition at line 96 of file NVVMIntrinsicUtils.cpp.

References llvm::dyn_cast(), and SWIZZLE_96B.

◆ RCPShouldFTZ()

bool llvm::nvvm::RCPShouldFTZ ( Intrinsic::ID IntrinsicID)
inline

Definition at line 497 of file NVVMIntrinsicUtils.h.

References llvm_unreachable.

◆ UnaryMathIntrinsicShouldFTZ()

bool llvm::nvvm::UnaryMathIntrinsicShouldFTZ ( Intrinsic::ID IntrinsicID)
inline

Definition at line 471 of file NVVMIntrinsicUtils.h.

References llvm_unreachable.