|
LLVM 23.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 39 of file SPIRVSubtarget.h.
| Enumerator | |
|---|---|
| Kernel | |
| Shader | |
| Unknown | |
Definition at line 42 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::Triple::AMD, llvm::createSPIRVInstructionSelector(), Extensions, llvm::SPIRVExtensionsParser::getValidExtensions(), 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 154 of file SPIRVSubtarget.cpp.
References isAtLeastVer(), and SPVTranslatorCompat.
| bool SPIRVSubtarget::canUseExtension | ( | SPIRV::Extension::Extension | E | ) | const |
Definition at line 125 of file SPIRVSubtarget.cpp.
Referenced by llvm::addressSpaceToStorageClass().
| bool SPIRVSubtarget::canUseExtInstSet | ( | SPIRV::InstructionSet::InstructionSet | E | ) | const |
Definition at line 129 of file SPIRVSubtarget.cpp.
|
inlinestatic |
Definition at line 140 of file SPIRVSubtarget.h.
|
inline |
Definition at line 105 of file SPIRVSubtarget.h.
|
inline |
Definition at line 84 of file SPIRVSubtarget.h.
|
inlineoverride |
Definition at line 114 of file SPIRVSubtarget.h.
|
inline |
Definition at line 87 of file SPIRVSubtarget.h.
Referenced by getExecutionModel(), isKernel(), and isShader().
|
inlineoverride |
Definition at line 130 of file SPIRVSubtarget.h.
|
inlineoverride |
Definition at line 126 of file SPIRVSubtarget.h.
|
inlineoverride |
Definition at line 129 of file SPIRVSubtarget.h.
Referenced by addConstantsToTrack(), deduceAndAssignTypeForGUnmerge(), and doInsertBitcast().
|
inlineoverride |
Definition at line 123 of file SPIRVSubtarget.h.
|
inlineoverride |
Definition at line 120 of file SPIRVSubtarget.h.
|
inline |
Definition at line 83 of file SPIRVSubtarget.h.
| SPIRV::InstructionSet::InstructionSet SPIRVSubtarget::getPreferredInstructionSet | ( | ) | const |
Definition at line 135 of file SPIRVSubtarget.cpp.
References isShader().
|
inlineoverride |
Definition at line 117 of file SPIRVSubtarget.h.
Referenced by doInsertBitcast().
|
inlineoverride |
Definition at line 136 of file SPIRVSubtarget.h.
Referenced by doInsertBitcast().
|
inline |
Definition at line 112 of file SPIRVSubtarget.h.
Referenced by llvm::SPIRVModuleAnalysis::runOnModule(), and llvm::SPIRVLegalizerInfo::SPIRVLegalizerInfo().
|
inline |
Definition at line 98 of file SPIRVSubtarget.h.
|
inlineoverride |
Definition at line 133 of file SPIRVSubtarget.h.
|
inline |
Definition at line 97 of file SPIRVSubtarget.h.
|
inline |
Definition at line 102 of file SPIRVSubtarget.h.
|
inline |
Definition at line 103 of file SPIRVSubtarget.h.
| void SPIRVSubtarget::initAvailableExtensions | ( | const std::set< SPIRV::Extension::Extension > & | AllowedExtIds | ) |
Definition at line 216 of file SPIRVSubtarget.cpp.
References llvm::SPIRVExtensionsParser::getValidExtensions().
Referenced by SPIRVSubtarget(), and llvm::SPIRVTranslate().
| SPIRVSubtarget & SPIRVSubtarget::initSubtargetDependencies | ( | StringRef | CPU, |
| StringRef | FS ) |
Definition at line 119 of file SPIRVSubtarget.cpp.
References ParseSubtargetFeatures(), and SPIRVSubtarget().
Referenced by SPIRVSubtarget().
| bool SPIRVSubtarget::isAtLeastOpenCLVer | ( | VersionTuple | VerToCompareTo | ) | const |
Definition at line 146 of file SPIRVSubtarget.cpp.
References isAtLeastVer(), and isShader().
| bool SPIRVSubtarget::isAtLeastSPIRVVer | ( | VersionTuple | VerToCompareTo | ) | const |
Definition at line 142 of file SPIRVSubtarget.cpp.
References isAtLeastVer().
|
inline |
Definition at line 88 of file SPIRVSubtarget.h.
References getEnv(), and Kernel.
Referenced by getExecutionModel(), and resolveEnvFromModule().
|
inline |
Definition at line 90 of file SPIRVSubtarget.h.
References llvm::Triple::spirv.
|
inline |
Definition at line 93 of file SPIRVSubtarget.h.
References llvm::Triple::spirv32, and llvm::Triple::spirv64.
|
inline |
Definition at line 89 of file SPIRVSubtarget.h.
References getEnv(), and Shader.
Referenced by getPreferredInstructionSet(), and isAtLeastOpenCLVer().
| void llvm::SPIRVSubtarget::ParseSubtargetFeatures | ( | StringRef | CPU, |
| StringRef | TuneCPU, | ||
| StringRef | FS ) |
Referenced by initSubtargetDependencies().
Definition at line 194 of file SPIRVSubtarget.cpp.
References llvm::any_of(), assert(), F, isKernel(), Kernel, setEnv(), Shader, and Unknown.
| void SPIRVSubtarget::setEnv | ( | SPIRVEnvType | E | ) |
Definition at line 179 of file SPIRVSubtarget.cpp.
References llvm::report_fatal_error(), and Unknown.
Referenced by resolveEnvFromModule().
|
staticconstexpr |
Definition at line 144 of file SPIRVSubtarget.h.