================
@@ -300,6 +306,10 @@ void NVPTXTargetInfo::getTargetDefines(const LangOptions 
&Opts,
       Builder.defineMacro("__CUDA_ARCH_FEAT_SM90_ALL", "1");
     if (GPU == OffloadArch::SM_100a)
       Builder.defineMacro("__CUDA_ARCH_FEAT_SM100_ALL", "1");
+    if (GPU == OffloadArch::SM_101a)
+      Builder.defineMacro("__CUDA_ARCH_FEAT_SM101_ALL", "1");
+    if (GPU == OffloadArch::SM_120a)
+      Builder.defineMacro("__CUDA_ARCH_FEAT_SM120_ALL", "1");
----------------
jodelek wrote:

I think handling variable length is necessary:
```
switch(GPU) {
  case OffloadArch::SM_90a:
  case OffloadArch::SM_100a:
  case OffloadArch::SM_101a:
  case OffloadArch::SM_120a:
    Builder.defineMacro("__CUDA_ARCH_FEAT_SM" + CUDAArchCode.substr(0, 
CUDAArchCode.length()-1) + "_ALL", "1");
    break;
}
```

https://github.com/llvm/llvm-project/pull/127187
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to