11#include "llvm/Support/AMDGPUAddrSpace.h"
21constexpr unsigned AMDGPUAddrSpaceMap[] = {
22 llvm::AMDGPUAS::FLAT_ADDRESS,
23 llvm::AMDGPUAS::PRIVATE_ADDRESS,
24 llvm::AMDGPUAS::LOCAL_ADDRESS,
25 llvm::AMDGPUAS::GLOBAL_ADDRESS,
26 llvm::AMDGPUAS::CONSTANT_ADDRESS,
27 llvm::AMDGPUAS::FLAT_ADDRESS,
28 llvm::AMDGPUAS::GLOBAL_ADDRESS,
29 llvm::AMDGPUAS::GLOBAL_ADDRESS,
34 unsigned getTargetAddrSpaceFromCIRAddrSpace(
35 cir::LangAddressSpace addrSpace)
const override {
36 auto idx =
static_cast<unsigned>(addrSpace);
37 assert(idx < std::size(AMDGPUAddrSpaceMap) &&
38 "Unknown CIR address space for AMDGPU target");
39 return AMDGPUAddrSpaceMap[idx];
46 return std::make_unique<AMDGPUTargetLoweringInfo>();
std::unique_ptr< TargetLoweringInfo > createAMDGPUTargetLoweringInfo()