[clang] [llvm] [clang][DebugInfo] Add virtual call-site target information in DWARF. (PR #167666)

David Blaikie via cfe-commits cfe-commits at lists.llvm.org
Thu Feb 12 08:58:49 PST 2026


================
@@ -4978,6 +4978,29 @@ void CGDebugInfo::EmitFunctionDecl(GlobalDecl GD, SourceLocation Loc,
     Fn->setSubprogram(SP);
 }
 
+void CGDebugInfo::addCallTarget(const FunctionDecl *FD, llvm::CallBase *CI) {
+  if (!generateVirtualCallSite())
+    return;
+
+  if (!FD)
+    return;
+
+  // Ignore method types that never can be indirect calls.
+  if (isa<CXXConstructorDecl>(FD) || isa<CXXDestructorDecl>(FD) ||
+      FD->hasAttr<CUDAGlobalAttr>())
+    return;
+
----------------
dwblaikie wrote:

Do these not fall out from the !indirect check below?

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


More information about the cfe-commits mailing list