[clang] [llvm] [NVPTX] Add NVVMUpgradeAnnotations pass to cleanup legacy annotations (PR #119261)

Alex MacLean via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 10 11:37:50 PST 2024


================
@@ -5022,6 +5022,69 @@ bool llvm::UpgradeDebugInfo(Module &M) {
   return Modified;
 }
 
+bool static upgradeSingleNVVMAnnotation(GlobalValue *GV, StringRef K,
+                                        const Metadata *V) {
+  if (K == "kernel") {
+    assert(mdconst::extract<ConstantInt>(V)->getZExtValue() == 1);
+    cast<Function>(GV)->addFnAttr("nvvm.kernel");
----------------
AlexMaclean wrote:

Some annotations (such as "texture") are applied to global variables, not functions. I cannot unconditionally cast to a Function until confirming the annotation kind.

https://github.com/llvm/llvm-project/pull/119261


More information about the llvm-commits mailing list