LLVM 20.0.0git
Classes | Namespaces | Typedefs | Enumerations | Functions
SPIRVDuplicatesTracker.h File Reference
#include "MCTargetDesc/SPIRVBaseInfo.h"
#include "MCTargetDesc/SPIRVMCTargetDesc.h"
#include "SPIRVUtils.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/MapVector.h"
#include "llvm/CodeGen/GlobalISel/MachineIRBuilder.h"
#include "llvm/CodeGen/MachineModuleInfo.h"
#include <type_traits>

Go to the source code of this file.

Classes

class  llvm::SPIRV::DTSortableEntry
 
union  llvm::SPIRV::ImageAttrs
 
struct  llvm::SPIRV::ImageAttrs::BitFlags
 
class  llvm::SPIRVDuplicatesTrackerBase< KeyTy >
 
class  llvm::SPIRVDuplicatesTracker< T >
 
class  llvm::SPIRVDuplicatesTracker< SPIRV::SpecialTypeDescriptor >
 
class  llvm::SPIRVGeneralDuplicatesTracker
 

Namespaces

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

Typedefs

using llvm::SPIRV::SpecialTypeDescriptor = std::tuple< const Type *, unsigned, unsigned >
 

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_Pointer , llvm::SPIRV::STK_Last = -1
}
 

Functions

SpecialTypeDescriptor llvm::SPIRV::make_descr_image (const Type *SampledTy, unsigned Dim, unsigned Depth, unsigned Arrayed, unsigned MS, unsigned Sampled, unsigned ImageFormat, unsigned AQ=0)
 
SpecialTypeDescriptor llvm::SPIRV::make_descr_sampled_image (const Type *SampledTy, const MachineInstr *ImageTy)
 
SpecialTypeDescriptor llvm::SPIRV::make_descr_sampler ()
 
SpecialTypeDescriptor llvm::SPIRV::make_descr_pipe (uint8_t AQ)
 
SpecialTypeDescriptor llvm::SPIRV::make_descr_event ()
 
SpecialTypeDescriptor llvm::SPIRV::make_descr_pointee (const Type *ElementType, unsigned AddressSpace)