LLVM 20.0.0git
|
#include "SPIRVGlobalRegistry.h"
#include "SPIRV.h"
#include "SPIRVBuiltins.h"
#include "SPIRVSubtarget.h"
#include "SPIRVTargetMachine.h"
#include "SPIRVUtils.h"
#include "llvm/ADT/APInt.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/Type.h"
#include "llvm/Support/Casting.h"
#include <cassert>
#include <functional>
Go to the source code of this file.
Functions | |
unsigned | typeToAddressSpace (const Type *Ty) |
static Register | createTypeVReg (MachineRegisterInfo &MRI) |
Register | createTypeVReg (MachineIRBuilder &MIRBuilder) |
static std::string | GetSpirvImageTypeName (const SPIRVType *Type, MachineIRBuilder &MIRBuilder, const std::string &Prefix) |
static std::string | buildSpirvTypeName (const SPIRVType *Type, MachineIRBuilder &MIRBuilder) |
unsigned | getAS (SPIRVType *SpvType) |
|
static |
Definition at line 780 of file SPIRVGlobalRegistry.cpp.
References assert(), buildSpirvTypeName(), llvm::MachineOperand::getCImm(), llvm::MachineIRBuilder::getMRI(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), GetSpirvImageTypeName(), llvm::ConstantInt::getZExtValue(), llvm_unreachable, and MRI.
Referenced by buildSpirvTypeName(), llvm::SPIRVGlobalRegistry::getOrCreateGlobalVariableWithBinding(), and GetSpirvImageTypeName().
|
inline |
Definition at line 94 of file SPIRVGlobalRegistry.cpp.
References createTypeVReg(), llvm::MachineIRBuilder::getMF(), and llvm::MachineFunction::getRegInfo().
|
static |
Definition at line 88 of file SPIRVGlobalRegistry.cpp.
References MRI, and llvm::LLT::scalar().
Referenced by createTypeVReg(), llvm::SPIRVGlobalRegistry::getOrCreateOpTypeByOpcode(), llvm::SPIRVGlobalRegistry::getOrCreateOpTypeCoopMatr(), llvm::SPIRVGlobalRegistry::getOrCreateOpTypeDeviceEvent(), llvm::SPIRVGlobalRegistry::getOrCreateOpTypeImage(), llvm::SPIRVGlobalRegistry::getOrCreateOpTypePipe(), llvm::SPIRVGlobalRegistry::getOrCreateOpTypeSampledImage(), llvm::SPIRVGlobalRegistry::getOrCreateOpTypeSampler(), llvm::SPIRVGlobalRegistry::getOrCreateSPIRVArrayType(), llvm::SPIRVGlobalRegistry::getOrCreateSPIRVBoolType(), llvm::SPIRVGlobalRegistry::getOrCreateSPIRVPointerType(), llvm::SPIRVGlobalRegistry::getOrCreateSPIRVType(), and llvm::SPIRVGlobalRegistry::getOrCreateSPIRVVectorType().
Definition at line 1670 of file SPIRVGlobalRegistry.cpp.
References llvm::MachineOperand::getImm(), llvm::MachineInstr::getOperand(), and llvm::storageClassToAddressSpace().
Referenced by llvm::SPIRVGlobalRegistry::getRegType().
|
static |
Definition at line 815 of file SPIRVGlobalRegistry.cpp.
References buildSpirvTypeName(), llvm::MachineIRBuilder::getMRI(), llvm::MachineRegisterInfo::getUniqueVRegDef(), and I.
Referenced by buildSpirvTypeName().
Definition at line 32 of file SPIRVGlobalRegistry.cpp.
References llvm::isTypedPointerWrapper(), and llvm::report_fatal_error().
Referenced by llvm::SPIRVGlobalRegistry::getOrCreateConstNullPtr().