18constexpr unsigned SPIRVAddrSpaceMap[] = {
31 unsigned getTargetAddrSpaceFromCIRAddrSpace(
32 cir::LangAddressSpace addrSpace)
const override {
36 auto idx =
static_cast<unsigned>(addrSpace);
37 assert(idx < std::size(SPIRVAddrSpaceMap) &&
38 "Unknown CIR address space for SPIR-V target");
39 return SPIRVAddrSpaceMap[idx];
43class SPIRVTargetLoweringInfo :
public CommonSPIRTargetLoweringInfo {
46 convertSyncScope(cir::SyncScopeKind syncScope)
const override {
54 return std::make_unique<CommonSPIRTargetLoweringInfo>();
58 return std::make_unique<SPIRVTargetLoweringInfo>();
std::unique_ptr< TargetLoweringInfo > createCommonSPIRTargetLoweringInfo()
std::unique_ptr< TargetLoweringInfo > createSPIRVTargetLoweringInfo()
static bool spirvDefaultIsGenericAddrSpace()