diff options
author | Pierre van Houtryve <pierre.vanhoutryve@amd.com> | 2024-02-12 10:18:20 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-12 10:18:20 +0100 |
commit | f93aa5157a3317b24cff660ac972814ee9ed4dbc (patch) | |
tree | 35612be67cf41bfc720363bfcc15bb6c3e753812 /llvm/lib/Object/ELFObjectFile.cpp | |
parent | b221b9733688d149dc288339e304e48af609ad75 (diff) | |
download | llvm-f93aa5157a3317b24cff660ac972814ee9ed4dbc.zip llvm-f93aa5157a3317b24cff660ac972814ee9ed4dbc.tar.gz llvm-f93aa5157a3317b24cff660ac972814ee9ed4dbc.tar.bz2 |
[AMDGPU] Introduce GFX9/10.1/10.3/11 Generic Targets (#76955)
These generic targets include multiple GPUs and will, in the future,
provide a way to build once and run on multiple GPU, at the cost of less
optimization opportunities.
Note that this is just doing the compiler side of things, device libs an
runtimes/loader/etc. don't know about these targets yet, so none of them
actually work in practice right now. This is just the initial commit to
make LLVM aware of them.
This contains the documentation changes for both this change and #76954
as well.
Diffstat (limited to 'llvm/lib/Object/ELFObjectFile.cpp')
-rw-r--r-- | llvm/lib/Object/ELFObjectFile.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/lib/Object/ELFObjectFile.cpp b/llvm/lib/Object/ELFObjectFile.cpp index 38a9e0e..01949c6 100644 --- a/llvm/lib/Object/ELFObjectFile.cpp +++ b/llvm/lib/Object/ELFObjectFile.cpp @@ -514,6 +514,16 @@ StringRef ELFObjectFileBase::getAMDGPUCPUName() const { return "gfx1200"; case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1201: return "gfx1201"; + + // Generic AMDGCN targets + case ELF::EF_AMDGPU_MACH_AMDGCN_GFX9_GENERIC: + return "gfx9-generic"; + case ELF::EF_AMDGPU_MACH_AMDGCN_GFX10_1_GENERIC: + return "gfx10.1-generic"; + case ELF::EF_AMDGPU_MACH_AMDGCN_GFX10_3_GENERIC: + return "gfx10.3-generic"; + case ELF::EF_AMDGPU_MACH_AMDGCN_GFX11_GENERIC: + return "gfx11-generic"; default: llvm_unreachable("Unknown EF_AMDGPU_MACH value"); } |