aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Basic/Cuda.cpp
diff options
context:
space:
mode:
authorYaxun Liu <Yaxun.Liu@amd.com>2019-07-11 17:50:09 +0000
committerYaxun Liu <Yaxun.Liu@amd.com>2019-07-11 17:50:09 +0000
commit6add24adaf6a118022bfb66130fc5735b6451e68 (patch)
treef4b82c64c413566aeddf13506ae9d4cb1d9e7ae3 /clang/lib/Basic/Cuda.cpp
parent3b5e60b695e11c01d218dcdaf63e18c4ba781bcf (diff)
downloadllvm-6add24adaf6a118022bfb66130fc5735b6451e68.zip
llvm-6add24adaf6a118022bfb66130fc5735b6451e68.tar.gz
llvm-6add24adaf6a118022bfb66130fc5735b6451e68.tar.bz2
[HIP] Add GPU arch gfx1010, gfx1011, and gfx1012
Differential Revision: https://reviews.llvm.org/D64364 llvm-svn: 365799
Diffstat (limited to 'clang/lib/Basic/Cuda.cpp')
-rw-r--r--clang/lib/Basic/Cuda.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/clang/lib/Basic/Cuda.cpp b/clang/lib/Basic/Cuda.cpp
index d19925a..f2b6c8c 100644
--- a/clang/lib/Basic/Cuda.cpp
+++ b/clang/lib/Basic/Cuda.cpp
@@ -113,6 +113,12 @@ const char *CudaArchToString(CudaArch A) {
return "gfx908";
case CudaArch::GFX909: // TBA
return "gfx909";
+ case CudaArch::GFX1010: // TBA
+ return "gfx1010";
+ case CudaArch::GFX1011: // TBA
+ return "gfx1011";
+ case CudaArch::GFX1012: // TBA
+ return "gfx1012";
}
llvm_unreachable("invalid enum");
}
@@ -151,6 +157,9 @@ CudaArch StringToCudaArch(llvm::StringRef S) {
.Case("gfx906", CudaArch::GFX906)
.Case("gfx908", CudaArch::GFX908)
.Case("gfx909", CudaArch::GFX909)
+ .Case("gfx1010", CudaArch::GFX1010)
+ .Case("gfx1011", CudaArch::GFX1011)
+ .Case("gfx1012", CudaArch::GFX1012)
.Default(CudaArch::UNKNOWN);
}
@@ -264,6 +273,9 @@ CudaVirtualArch VirtualArchForCudaArch(CudaArch A) {
case CudaArch::GFX906:
case CudaArch::GFX908:
case CudaArch::GFX909:
+ case CudaArch::GFX1010:
+ case CudaArch::GFX1011:
+ case CudaArch::GFX1012:
return CudaVirtualArch::COMPUTE_AMDGCN;
}
llvm_unreachable("invalid enum");
@@ -312,6 +324,9 @@ CudaVersion MinVersionForCudaArch(CudaArch A) {
case CudaArch::GFX906:
case CudaArch::GFX908:
case CudaArch::GFX909:
+ case CudaArch::GFX1010:
+ case CudaArch::GFX1011:
+ case CudaArch::GFX1012:
return CudaVersion::CUDA_70;
}
llvm_unreachable("invalid enum");
@@ -336,6 +351,9 @@ CudaVersion MaxVersionForCudaArch(CudaArch A) {
case CudaArch::GFX810:
case CudaArch::GFX900:
case CudaArch::GFX902:
+ case CudaArch::GFX1010:
+ case CudaArch::GFX1011:
+ case CudaArch::GFX1012:
return CudaVersion::CUDA_80;
default:
return CudaVersion::LATEST;