10#include "llvm/Support/NVPTXAddrSpace.h"
16constexpr unsigned NVPTXAddrSpaceMap[] = {
17 llvm::NVPTXAS::ADDRESS_SPACE_GENERIC, llvm::NVPTXAS::ADDRESS_SPACE_GENERIC,
18 llvm::NVPTXAS::ADDRESS_SPACE_SHARED, llvm::NVPTXAS::ADDRESS_SPACE_GLOBAL,
19 llvm::NVPTXAS::ADDRESS_SPACE_CONST, llvm::NVPTXAS::ADDRESS_SPACE_GENERIC,
20 llvm::NVPTXAS::ADDRESS_SPACE_GLOBAL, llvm::NVPTXAS::ADDRESS_SPACE_GLOBAL,
25 unsigned getTargetAddrSpaceFromCIRAddrSpace(
26 cir::LangAddressSpace addrSpace)
const override {
28 auto idx =
static_cast<unsigned>(addrSpace);
29 assert(idx < std::size(NVPTXAddrSpaceMap) &&
30 "Unknown CIR address space for NVPTX target");
31 return NVPTXAddrSpaceMap[idx];
38 return std::make_unique<NVPTXTargetLoweringInfo>();
std::unique_ptr< TargetLoweringInfo > createNVPTXTargetLoweringInfo()