|
@@ -22,6 +22,8 @@ const char *CudaVersionToString(CudaVersion V) {
|
|
return "9.1";
|
|
return "9.1";
|
|
case CudaVersion::CUDA_92:
|
|
case CudaVersion::CUDA_92:
|
|
return "9.2";
|
|
return "9.2";
|
|
|
|
+ case CudaVersion::CUDA_100:
|
|
|
|
+ return "10.0";
|
|
}
|
|
}
|
|
llvm_unreachable("invalid enum");
|
|
llvm_unreachable("invalid enum");
|
|
}
|
|
}
|
|
@@ -60,6 +62,8 @@ const char *CudaArchToString(CudaArch A) {
|
|
return "sm_70";
|
|
return "sm_70";
|
|
case CudaArch::SM_72:
|
|
case CudaArch::SM_72:
|
|
return "sm_72";
|
|
return "sm_72";
|
|
|
|
+ case CudaArch::SM_75:
|
|
|
|
+ return "sm_75";
|
|
case CudaArch::GFX600: // tahiti
|
|
case CudaArch::GFX600: // tahiti
|
|
return "gfx600";
|
|
return "gfx600";
|
|
case CudaArch::GFX601: // pitcairn, verde, oland,hainan
|
|
case CudaArch::GFX601: // pitcairn, verde, oland,hainan
|
|
@@ -106,6 +110,7 @@ CudaArch StringToCudaArch(llvm::StringRef S) {
|
|
.Case("sm_62", CudaArch::SM_62)
|
|
.Case("sm_62", CudaArch::SM_62)
|
|
.Case("sm_70", CudaArch::SM_70)
|
|
.Case("sm_70", CudaArch::SM_70)
|
|
.Case("sm_72", CudaArch::SM_72)
|
|
.Case("sm_72", CudaArch::SM_72)
|
|
|
|
+ .Case("sm_75", CudaArch::SM_75)
|
|
.Case("gfx600", CudaArch::GFX600)
|
|
.Case("gfx600", CudaArch::GFX600)
|
|
.Case("gfx601", CudaArch::GFX601)
|
|
.Case("gfx601", CudaArch::GFX601)
|
|
.Case("gfx700", CudaArch::GFX700)
|
|
.Case("gfx700", CudaArch::GFX700)
|
|
@@ -152,6 +157,8 @@ const char *CudaVirtualArchToString(CudaVirtualArch A) {
|
|
return "compute_70";
|
|
return "compute_70";
|
|
case CudaVirtualArch::COMPUTE_72:
|
|
case CudaVirtualArch::COMPUTE_72:
|
|
return "compute_72";
|
|
return "compute_72";
|
|
|
|
+ case CudaVirtualArch::COMPUTE_75:
|
|
|
|
+ return "compute_75";
|
|
case CudaVirtualArch::COMPUTE_AMDGCN:
|
|
case CudaVirtualArch::COMPUTE_AMDGCN:
|
|
return "compute_amdgcn";
|
|
return "compute_amdgcn";
|
|
}
|
|
}
|
|
@@ -173,6 +180,7 @@ CudaVirtualArch StringToCudaVirtualArch(llvm::StringRef S) {
|
|
.Case("compute_62", CudaVirtualArch::COMPUTE_62)
|
|
.Case("compute_62", CudaVirtualArch::COMPUTE_62)
|
|
.Case("compute_70", CudaVirtualArch::COMPUTE_70)
|
|
.Case("compute_70", CudaVirtualArch::COMPUTE_70)
|
|
.Case("compute_72", CudaVirtualArch::COMPUTE_72)
|
|
.Case("compute_72", CudaVirtualArch::COMPUTE_72)
|
|
|
|
+ .Case("compute_75", CudaVirtualArch::COMPUTE_75)
|
|
.Case("compute_amdgcn", CudaVirtualArch::COMPUTE_AMDGCN)
|
|
.Case("compute_amdgcn", CudaVirtualArch::COMPUTE_AMDGCN)
|
|
.Default(CudaVirtualArch::UNKNOWN);
|
|
.Default(CudaVirtualArch::UNKNOWN);
|
|
}
|
|
}
|
|
@@ -210,6 +218,8 @@ CudaVirtualArch VirtualArchForCudaArch(CudaArch A) {
|
|
return CudaVirtualArch::COMPUTE_70;
|
|
return CudaVirtualArch::COMPUTE_70;
|
|
case CudaArch::SM_72:
|
|
case CudaArch::SM_72:
|
|
return CudaVirtualArch::COMPUTE_72;
|
|
return CudaVirtualArch::COMPUTE_72;
|
|
|
|
+ case CudaArch::SM_75:
|
|
|
|
+ return CudaVirtualArch::COMPUTE_75;
|
|
case CudaArch::GFX600:
|
|
case CudaArch::GFX600:
|
|
case CudaArch::GFX601:
|
|
case CudaArch::GFX601:
|
|
case CudaArch::GFX700:
|
|
case CudaArch::GFX700:
|
|
@@ -252,6 +262,8 @@ CudaVersion MinVersionForCudaArch(CudaArch A) {
|
|
return CudaVersion::CUDA_90;
|
|
return CudaVersion::CUDA_90;
|
|
case CudaArch::SM_72:
|
|
case CudaArch::SM_72:
|
|
return CudaVersion::CUDA_91;
|
|
return CudaVersion::CUDA_91;
|
|
|
|
+ case CudaArch::SM_75:
|
|
|
|
+ return CudaVersion::CUDA_100;
|
|
case CudaArch::GFX600:
|
|
case CudaArch::GFX600:
|
|
case CudaArch::GFX601:
|
|
case CudaArch::GFX601:
|
|
case CudaArch::GFX700:
|
|
case CudaArch::GFX700:
|