================
@@ -2518,6 +2518,59 @@ StringRef CGDebugInfo::getVTableName(const CXXRecordDecl
*RD) {
return internString("_vptr$", RD->getNameAsString());
}
+// Emit symbol for the debugger that points to the vtable address for
+// the given class. The symbol is named as '_vtable$'.
+// The debugger does not need to know any details about the contents of the
+// vtable as it can work this out using its knowledge of the ABI and the
+// existing information in the DWARF. The type is assumed to be 'void *'.
+void CGDebugInfo::emitVTableSymbol(llvm::GlobalVariable *VTable,
+ const CXXRecordDecl *RD) {
+ if (!CGM.getTarget().getCXXABI().isItaniumFamily())
+ return;
+
+ ASTContext &Context = CGM.getContext();
+ SmallString<64> Buffer;
+ StringRef SymbolName = "_vtable$";
+ const DeclContext *DC = static_cast<const DeclContext *>(RD);
----------------
CarlosAlbertoEnciso wrote:
You are correct. Removed the redundant cast.
https://github.com/llvm/llvm-project/pull/130255
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits