|
@@ -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;
|