LLVM 22.0.0git
SPIRVGlobalRegistry.cpp File Reference
#include "SPIRVGlobalRegistry.h"
#include "SPIRV.h"
#include "SPIRVBuiltins.h"
#include "SPIRVSubtarget.h"
#include "SPIRVUtils.h"
#include "llvm/ADT/APInt.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/IntrinsicsSPIRV.h"
#include "llvm/IR/Type.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/MathExtras.h"
#include <cassert>
#include <functional>

Go to the source code of this file.

Functions

static bool allowEmitFakeUse (const Value *Arg)
static unsigned typeToAddressSpace (const Type *Ty)
static bool storageClassRequiresExplictLayout (SPIRV::StorageClass::StorageClass SC)
static Register createTypeVReg (MachineRegisterInfo &MRI)
Register createTypeVReg (MachineIRBuilder &MIRBuilder)
unsigned getAS (SPIRVType *SpvType)

Function Documentation

◆ allowEmitFakeUse()

bool allowEmitFakeUse ( const Value * Arg)
static

◆ createTypeVReg() [1/2]

Register createTypeVReg ( MachineIRBuilder & MIRBuilder)
inline

◆ createTypeVReg() [2/2]

◆ getAS()

◆ storageClassRequiresExplictLayout()

◆ typeToAddressSpace()