LLVM 22.0.0git
SPIRVIRMapping.h File Reference

Go to the source code of this file.

Classes

union  llvm::SPIRV::ImageAttrs
struct  llvm::SPIRV::ImageAttrs::BitFlags
class  llvm::SPIRVIRMapping

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
namespace  llvm::SPIRV

Typedefs

using llvm::SPIRV::MIHandle = std::tuple<const MachineInstr *, Register, size_t>
using llvm::SPIRV::IRHandle = std::tuple<const void *, unsigned, unsigned>
using llvm::SPIRV::IRHandleMF = std::pair<IRHandle, const MachineFunction *>

Enumerations

enum  llvm::SPIRV::SpecialTypeKind {
  llvm::SPIRV::STK_Empty = 0 , llvm::SPIRV::STK_Image , llvm::SPIRV::STK_SampledImage , llvm::SPIRV::STK_Sampler ,
  llvm::SPIRV::STK_Pipe , llvm::SPIRV::STK_DeviceEvent , llvm::SPIRV::STK_ElementPointer , llvm::SPIRV::STK_Type ,
  llvm::SPIRV::STK_Value , llvm::SPIRV::STK_MachineInstr , llvm::SPIRV::STK_VkBuffer , llvm::SPIRV::STK_ExplictLayoutType ,
  llvm::SPIRV::STK_Last = -1
}

Functions

size_t llvm::SPIRV::to_hash (const MachineInstr *MI)
MIHandle llvm::SPIRV::getMIKey (const MachineInstr *MI)
IRHandleMF llvm::SPIRV::getIRHandleMF (IRHandle Handle, const MachineFunction *MF)
IRHandle llvm::SPIRV::irhandle_image (const Type *SampledTy, unsigned Dim, unsigned Depth, unsigned Arrayed, unsigned MS, unsigned Sampled, unsigned ImageFormat, unsigned AQ=0)
IRHandle llvm::SPIRV::irhandle_sampled_image (const Type *SampledTy, const MachineInstr *ImageTy)
IRHandle llvm::SPIRV::irhandle_sampler ()
IRHandle llvm::SPIRV::irhandle_pipe (uint8_t AQ)
IRHandle llvm::SPIRV::irhandle_event ()
IRHandle llvm::SPIRV::irhandle_pointee (const Type *ElementType, unsigned AddressSpace)
IRHandle llvm::SPIRV::irhandle_ptr (const void *Ptr, unsigned Arg, enum SpecialTypeKind STK)
IRHandle llvm::SPIRV::irhandle_vkbuffer (const Type *ElementType, StorageClass::StorageClass SC, bool IsWriteable)
IRHandle llvm::SPIRV::irhandle_explict_layout_type (const Type *Ty)
IRHandle llvm::SPIRV::handle (const Type *Ty)
IRHandle llvm::SPIRV::handle (const Value *V)
IRHandle llvm::SPIRV::handle (const MachineInstr *KeyMI)
bool llvm::SPIRV::type_has_layout_decoration (const Type *T)