diff options
| author | Shilei Tian <i@tianshilei.me> | 2025-05-30 22:11:22 -0400 |
|---|---|---|
| committer | Shilei Tian <i@tianshilei.me> | 2025-05-30 22:11:22 -0400 |
| commit | 4d48673562163d99dec601a40dc79aa30102d088 (patch) | |
| tree | 4e7366e587106743850f9f225b2ac0d8c44346c1 /llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp | |
| parent | 37ea3b32cdcb6c0dcecbcc4bf844f5190c7378dd (diff) | |
Reapply "Reapply "[AMDGPU] Make `getAssumedAddrSpace` return AS1 for pointer kernel arguments (#137488)""
This reverts commit 37ea3b32cdcb6c0dcecbcc4bf844f5190c7378dd.
Diffstat (limited to 'llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp')
| -rw-r--r-- | llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp b/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp index 9091fdd5c959..1ab4458bafcc 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp @@ -977,6 +977,10 @@ bool AMDGPUTargetMachine::isNoopAddrSpaceCast(unsigned SrcAS, } unsigned AMDGPUTargetMachine::getAssumedAddrSpace(const Value *V) const { + if (auto *Arg = dyn_cast<Argument>(V); + Arg && AMDGPU::isKernelCC(Arg->getParent()) && !Arg->hasByRefAttr()) + return AMDGPUAS::GLOBAL_ADDRESS; + const auto *LD = dyn_cast<LoadInst>(V); if (!LD) // TODO: Handle invariant load like constant. return AMDGPUAS::UNKNOWN_ADDRESS_SPACE; |
