LLVM 22.0.0git
|
#include "Target/SPIRV/SPIRVSubtarget.h"
Public Types | |
enum | SPIRVEnvType { Kernel , Shader , Unknown } |
Static Public Member Functions | |
static bool | classof (const TargetSubtargetInfo *ST) |
static void | addExtensionsToClOpt (const std::set< SPIRV::Extension::Extension > &AllowList) |
Static Public Attributes | |
static constexpr unsigned | MaxLegalAddressSpace = 6 |
Definition at line 38 of file SPIRVSubtarget.h.
Enumerator | |
---|---|
Kernel | |
Shader | |
Unknown |
Definition at line 41 of file SPIRVSubtarget.h.
SPIRVSubtarget::SPIRVSubtarget | ( | const Triple & | TT, |
const std::string & | CPU, | ||
const std::string & | FS, | ||
const SPIRVTargetMachine & | TM ) |
Definition at line 52 of file SPIRVSubtarget.cpp.
References llvm::createSPIRVInstructionSelector(), Extensions, if(), initAvailableExtensions(), initSubtargetDependencies(), llvm::Triple::Intel, Kernel, llvm::Triple::OpenCL, Shader, Unknown, and llvm::Triple::Vulkan.
Referenced by initSubtargetDependencies().
|
static |
Definition at line 42 of file SPIRVSubtarget.cpp.
References Extensions.
bool SPIRVSubtarget::canDirectlyComparePointers | ( | ) | const |
Definition at line 144 of file SPIRVSubtarget.cpp.
References isAtLeastVer(), and SPVTranslatorCompat.
bool SPIRVSubtarget::canUseExtension | ( | SPIRV::Extension::Extension | E | ) | const |
Definition at line 115 of file SPIRVSubtarget.cpp.
Referenced by llvm::addressSpaceToStorageClass().
bool SPIRVSubtarget::canUseExtInstSet | ( | SPIRV::InstructionSet::InstructionSet | E | ) | const |
Definition at line 119 of file SPIRVSubtarget.cpp.
|
inlinestatic |
Definition at line 147 of file SPIRVSubtarget.h.
|
inline |
Definition at line 112 of file SPIRVSubtarget.h.
|
inline |
Definition at line 84 of file SPIRVSubtarget.h.
|
inlineoverride |
Definition at line 121 of file SPIRVSubtarget.h.
|
inline |
Definition at line 94 of file SPIRVSubtarget.h.
Referenced by getExecutionModel(), isKernel(), and isShader().
|
inlineoverride |
Definition at line 137 of file SPIRVSubtarget.h.
|
inlineoverride |
Definition at line 133 of file SPIRVSubtarget.h.
|
inlineoverride |
Definition at line 136 of file SPIRVSubtarget.h.
Referenced by addConstantsToTrack(), and doInsertBitcast().
|
inlineoverride |
Definition at line 130 of file SPIRVSubtarget.h.
|
inlineoverride |
Definition at line 127 of file SPIRVSubtarget.h.
|
inline |
Definition at line 83 of file SPIRVSubtarget.h.
SPIRV::InstructionSet::InstructionSet SPIRVSubtarget::getPreferredInstructionSet | ( | ) | const |
Definition at line 125 of file SPIRVSubtarget.cpp.
References isShader().
|
inlineoverride |
Definition at line 124 of file SPIRVSubtarget.h.
Referenced by doInsertBitcast().
|
inlineoverride |
Definition at line 143 of file SPIRVSubtarget.h.
Referenced by doInsertBitcast().
|
inline |
Definition at line 119 of file SPIRVSubtarget.h.
Referenced by llvm::SPIRVLegalizerInfo::SPIRVLegalizerInfo().
|
inline |
Definition at line 105 of file SPIRVSubtarget.h.
|
inlineoverride |
Definition at line 140 of file SPIRVSubtarget.h.
|
inline |
Definition at line 104 of file SPIRVSubtarget.h.
|
inline |
Definition at line 109 of file SPIRVSubtarget.h.
|
inline |
Definition at line 110 of file SPIRVSubtarget.h.
void SPIRVSubtarget::initAvailableExtensions | ( | const std::set< SPIRV::Extension::Extension > & | AllowedExtIds | ) |
Definition at line 170 of file SPIRVSubtarget.cpp.
References llvm::SPIRVExtensionsParser::getValidExtensions().
Referenced by SPIRVSubtarget(), and llvm::SPIRVTranslate().
SPIRVSubtarget & SPIRVSubtarget::initSubtargetDependencies | ( | StringRef | CPU, |
StringRef | FS ) |
Definition at line 109 of file SPIRVSubtarget.cpp.
References ParseSubtargetFeatures(), and SPIRVSubtarget().
Referenced by SPIRVSubtarget().
bool SPIRVSubtarget::isAtLeastOpenCLVer | ( | VersionTuple | VerToCompareTo | ) | const |
Definition at line 136 of file SPIRVSubtarget.cpp.
References isAtLeastVer(), and isShader().
bool SPIRVSubtarget::isAtLeastSPIRVVer | ( | VersionTuple | VerToCompareTo | ) | const |
Definition at line 132 of file SPIRVSubtarget.cpp.
References isAtLeastVer().
|
inline |
Definition at line 95 of file SPIRVSubtarget.h.
References getEnv(), and Kernel.
Referenced by getExecutionModel().
|
inline |
Definition at line 97 of file SPIRVSubtarget.h.
References llvm::Triple::spirv.
|
inline |
Definition at line 100 of file SPIRVSubtarget.h.
References llvm::Triple::spirv32, and llvm::Triple::spirv64.
|
inline |
Definition at line 96 of file SPIRVSubtarget.h.
References getEnv(), and Shader.
Referenced by getExecutionModel(), getPreferredInstructionSet(), and isAtLeastOpenCLVer().
void llvm::SPIRVSubtarget::ParseSubtargetFeatures | ( | StringRef | CPU, |
StringRef | TuneCPU, | ||
StringRef | FS ) |
Referenced by initSubtargetDependencies().
|
inline |
Definition at line 86 of file SPIRVSubtarget.h.
References E(), llvm::report_fatal_error(), and Unknown.
Referenced by getExecutionModel().
|
staticconstexpr |
Definition at line 151 of file SPIRVSubtarget.h.