[clang] 97ed134 - [AMDGPU] remove DefIsPriv mapping (#202694)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Jun 11 06:01:37 PDT 2026
Author: Jameson Nash
Date: 2026-06-11T09:01:32-04:00
New Revision: 97ed1342b095adc130467b98350a0dbd91dfad02
URL: https://github.com/llvm/llvm-project/commit/97ed1342b095adc130467b98350a0dbd91dfad02
DIFF: https://github.com/llvm/llvm-project/commit/97ed1342b095adc130467b98350a0dbd91dfad02.diff
LOG: [AMDGPU] remove DefIsPriv mapping (#202694)
Since various commits that now avoid immediately casting most
temporaries, and now follow Sema for variables, this looks like tests
pass now without needing a second map to correct those issues
afterwards. Hopefully this will help find any similar remaining issues
expeditiously, if any.
Added:
Modified:
clang/lib/Basic/Targets/AMDGPU.cpp
clang/lib/Basic/Targets/AMDGPU.h
Removed:
################################################################################
diff --git a/clang/lib/Basic/Targets/AMDGPU.cpp b/clang/lib/Basic/Targets/AMDGPU.cpp
index 6b077dfa8e142..bfa956fa9a4e3 100644
--- a/clang/lib/Basic/Targets/AMDGPU.cpp
+++ b/clang/lib/Basic/Targets/AMDGPU.cpp
@@ -27,7 +27,7 @@ namespace targets {
// If you edit the description strings, make sure you update
// getPointerWidthV().
-const LangASMap AMDGPUTargetInfo::AMDGPUDefIsGenMap = {
+const LangASMap AMDGPUTargetInfo::AMDGPUAddrSpaceMap = {
llvm::AMDGPUAS::FLAT_ADDRESS, // Default
llvm::AMDGPUAS::GLOBAL_ADDRESS, // opencl_global
llvm::AMDGPUAS::LOCAL_ADDRESS, // opencl_local
@@ -58,35 +58,6 @@ const LangASMap AMDGPUTargetInfo::AMDGPUDefIsGenMap = {
llvm::AMDGPUAS::GLOBAL_ADDRESS, // hlsl_push_constant
};
-const LangASMap AMDGPUTargetInfo::AMDGPUDefIsPrivMap = {
- llvm::AMDGPUAS::PRIVATE_ADDRESS, // Default
- llvm::AMDGPUAS::GLOBAL_ADDRESS, // opencl_global
- llvm::AMDGPUAS::LOCAL_ADDRESS, // opencl_local
- llvm::AMDGPUAS::CONSTANT_ADDRESS, // opencl_constant
- llvm::AMDGPUAS::PRIVATE_ADDRESS, // opencl_private
- llvm::AMDGPUAS::FLAT_ADDRESS, // opencl_generic
- llvm::AMDGPUAS::GLOBAL_ADDRESS, // opencl_global_device
- llvm::AMDGPUAS::GLOBAL_ADDRESS, // opencl_global_host
- llvm::AMDGPUAS::GLOBAL_ADDRESS, // cuda_device
- llvm::AMDGPUAS::CONSTANT_ADDRESS, // cuda_constant
- llvm::AMDGPUAS::LOCAL_ADDRESS, // cuda_shared
- // SYCL address space values for this map are dummy
- llvm::AMDGPUAS::FLAT_ADDRESS, // sycl_global
- llvm::AMDGPUAS::FLAT_ADDRESS, // sycl_global_device
- llvm::AMDGPUAS::FLAT_ADDRESS, // sycl_global_host
- llvm::AMDGPUAS::FLAT_ADDRESS, // sycl_local
- llvm::AMDGPUAS::FLAT_ADDRESS, // sycl_private
- llvm::AMDGPUAS::FLAT_ADDRESS, // ptr32_sptr
- llvm::AMDGPUAS::FLAT_ADDRESS, // ptr32_uptr
- llvm::AMDGPUAS::FLAT_ADDRESS, // ptr64
- llvm::AMDGPUAS::FLAT_ADDRESS, // hlsl_groupshared
- llvm::AMDGPUAS::CONSTANT_ADDRESS, // hlsl_constant
- llvm::AMDGPUAS::PRIVATE_ADDRESS, // hlsl_private
- llvm::AMDGPUAS::GLOBAL_ADDRESS, // hlsl_device
- llvm::AMDGPUAS::PRIVATE_ADDRESS, // hlsl_input
- llvm::AMDGPUAS::PRIVATE_ADDRESS, // hlsl_output
- llvm::AMDGPUAS::GLOBAL_ADDRESS, // hlsl_push_constant
-};
} // namespace targets
} // namespace clang
@@ -217,10 +188,6 @@ void AMDGPUTargetInfo::fillValidCPUList(
llvm::AMDGPU::fillValidArchListR600(Values);
}
-void AMDGPUTargetInfo::setAddressSpaceMap(bool DefaultIsPrivate) {
- AddrSpaceMap = DefaultIsPrivate ? &AMDGPUDefIsPrivMap : &AMDGPUDefIsGenMap;
-}
-
AMDGPUTargetInfo::AMDGPUTargetInfo(const llvm::Triple &Triple,
const TargetOptions &Opts)
: TargetInfo(Triple),
@@ -230,8 +197,7 @@ AMDGPUTargetInfo::AMDGPUTargetInfo(const llvm::Triple &Triple,
: llvm::AMDGPU::getArchAttrR600(GPUKind)) {
resetDataLayout();
- setAddressSpaceMap(Triple.getOS() == llvm::Triple::Mesa3D ||
- !Triple.isAMDGCN());
+ AddrSpaceMap = &AMDGPUAddrSpaceMap;
UseAddrSpaceMapMangling = true;
if (Triple.isAMDGCN()) {
@@ -268,12 +234,6 @@ AMDGPUTargetInfo::AMDGPUTargetInfo(const llvm::Triple &Triple,
void AMDGPUTargetInfo::adjust(DiagnosticsEngine &Diags, LangOptions &Opts,
const TargetInfo *Aux) {
TargetInfo::adjust(Diags, Opts, Aux);
- // ToDo: There are still a few places using default address space as private
- // address space in OpenCL, which needs to be cleaned up, then the references
- // to OpenCL can be removed from the following line.
- setAddressSpaceMap((Opts.OpenCL && !Opts.OpenCLGenericAddressSpace) ||
- !getTriple().isAMDGCN());
-
AtomicOpts = AtomicOptions(Opts);
}
diff --git a/clang/lib/Basic/Targets/AMDGPU.h b/clang/lib/Basic/Targets/AMDGPU.h
index f1bfca4c42417..1761f32266d41 100644
--- a/clang/lib/Basic/Targets/AMDGPU.h
+++ b/clang/lib/Basic/Targets/AMDGPU.h
@@ -30,8 +30,7 @@ class LLVM_LIBRARY_VISIBILITY AMDGPUTargetInfo final : public TargetInfo {
static const char *const GCCRegNames[];
- static const LangASMap AMDGPUDefIsGenMap;
- static const LangASMap AMDGPUDefIsPrivMap;
+ static const LangASMap AMDGPUAddrSpaceMap;
llvm::AMDGPU::GPUKind GPUKind;
unsigned GPUFeatures;
@@ -97,8 +96,6 @@ class LLVM_LIBRARY_VISIBILITY AMDGPUTargetInfo final : public TargetInfo {
public:
AMDGPUTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts);
- void setAddressSpaceMap(bool DefaultIsPrivate);
-
void adjust(DiagnosticsEngine &Diags, LangOptions &Opts,
const TargetInfo *Aux) override;
More information about the cfe-commits
mailing list