|
LLVM 24.0.0git
|
This file contains NVVM-specific IR verification logic. More...
#include "VerifierInternal.h"#include "llvm/IR/Constants.h"#include "llvm/IR/DerivedTypes.h"#include "llvm/IR/IntrinsicsNVPTX.h"#include "llvm/Support/MathExtras.h"#include <optional>Go to the source code of this file.
Macros | |
| #define | Check(C, ...) |
Functions | |
| static bool | isValidSPElemSize (unsigned ElemSize) |
| static bool | isValidSPIdxSize (unsigned IdxSize) |
| static bool | isValidSPRepeatFactor (unsigned RepeatFactor) |
| static bool | isValidSPDecompressFactor (unsigned NumSrc, unsigned NumTgt) |
| static std::optional< SPOperandLayout > | getSPCompressLayout (unsigned ElemSize, unsigned IdxSize, unsigned RepeatFactor) |
| static std::optional< SPOperandLayout > | getSPDecompressLayout (unsigned NumSrc, unsigned NumTgt, unsigned ElemSize, unsigned IdxSize, unsigned RepeatFactor) |
| static std::optional< SPVectorInfo > | getSPVectorInfo (Type *Ty) |
| static std::optional< unsigned > | getSPMetadataRegisters (Type *Ty) |
| static void | verifySPCompress (VerifierSupport &VS, CallBase &Call) |
| static void | verifySPDecompress (VerifierSupport &VS, CallBase &Call) |
Variables | |
| constexpr unsigned | MaxSPOperandRegisters = 253 |
This file contains NVVM-specific IR verification logic.
These checks are always compiled and linked as part of LLVMCore.
Definition in file VerifierNVVM.cpp.
| #define Check | ( | C, | |
| ... ) |
Definition at line 24 of file VerifierNVVM.cpp.
Referenced by verifySPCompress(), and verifySPDecompress().
|
static |
Definition at line 79 of file VerifierNVVM.cpp.
References llvm::divideCeil(), isValidSPElemSize(), isValidSPIdxSize(), isValidSPRepeatFactor(), and MaxSPOperandRegisters.
Referenced by verifySPCompress().
|
static |
Definition at line 94 of file VerifierNVVM.cpp.
References llvm::divideCeil(), isValidSPDecompressFactor(), isValidSPElemSize(), isValidSPIdxSize(), isValidSPRepeatFactor(), and MaxSPOperandRegisters.
Referenced by verifySPDecompress().
Definition at line 130 of file VerifierNVVM.cpp.
References llvm::dyn_cast().
Referenced by verifySPCompress(), and verifySPDecompress().
|
static |
Definition at line 115 of file VerifierNVVM.cpp.
References llvm::divideCeil(), and llvm::dyn_cast().
Referenced by verifySPCompress(), and verifySPDecompress().
Definition at line 65 of file VerifierNVVM.cpp.
Referenced by getSPDecompressLayout().
Definition at line 53 of file VerifierNVVM.cpp.
Referenced by getSPCompressLayout(), and getSPDecompressLayout().
Definition at line 57 of file VerifierNVVM.cpp.
Referenced by getSPCompressLayout(), and getSPDecompressLayout().
Definition at line 61 of file VerifierNVVM.cpp.
References llvm::isPowerOf2_32().
Referenced by getSPCompressLayout(), and getSPDecompressLayout().
|
static |
Definition at line 139 of file VerifierNVVM.cpp.
References Call, llvm::cast(), Check, llvm::Data, llvm::dyn_cast(), getSPCompressLayout(), getSPMetadataRegisters(), and getSPVectorInfo().
Referenced by llvm::verifyNVVMIntrinsicCall().
|
static |
Definition at line 170 of file VerifierNVVM.cpp.
References Call, llvm::cast(), Check, llvm::Data, getSPDecompressLayout(), getSPMetadataRegisters(), and getSPVectorInfo().
Referenced by llvm::verifyNVVMIntrinsicCall().
|
constexpr |
Definition at line 51 of file VerifierNVVM.cpp.
Referenced by getSPCompressLayout(), and getSPDecompressLayout().