]> granicus.if.org Git - clang/commitdiff
Only generate a VTT for classes that need a VTT.
authorMike Stump <mrs@apple.com>
Tue, 10 Nov 2009 19:13:04 +0000 (19:13 +0000)
committerMike Stump <mrs@apple.com>
Tue, 10 Nov 2009 19:13:04 +0000 (19:13 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86699 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/CGVtable.cpp

index 3799695b901194162bea1abdbb2e53a4590df298..636639d05e9b1e79131c9caba821930f4cf62e0e 100644 (file)
@@ -733,6 +733,10 @@ public:
 };
 
 llvm::Constant *CodeGenModule::GenerateVTT(const CXXRecordDecl *RD) {
+  // Only classes that have virtual bases need a VTT.
+  if (RD->getNumVBases() == 0)
+    return 0;
+
   llvm::SmallString<256> OutName;
   llvm::raw_svector_ostream Out(OutName);
   mangleCXXVTT(getMangleContext(), RD, Out);