diff options
| author | David Blaikie <dblaikie@gmail.com> | 2013-08-16 20:40:29 +0000 |
|---|---|---|
| committer | David Blaikie <dblaikie@gmail.com> | 2013-08-16 20:40:29 +0000 |
| commit | 9eddbbd563629fbb11d5d1840194fa46132ddca4 (patch) | |
| tree | 8b9e334d422c0105f5988a8e45784567707cf5b6 /clang/lib/CodeGen/CGVTables.cpp | |
| parent | ab255bb9cf0fd2814c374e3c2ed3fd7ff957ffdc (diff) | |
| download | bcm5719-llvm-9eddbbd563629fbb11d5d1840194fa46132ddca4.tar.gz bcm5719-llvm-9eddbbd563629fbb11d5d1840194fa46132ddca4.zip | |
DebugInfo: Omit debug info for dynamic classes in TUs that do not have the vtable for that class
This reduces Clang's .dwo (fission debug info) size by 23% over
Clang+LLVM.
llvm-svn: 188576
Diffstat (limited to 'clang/lib/CodeGen/CGVTables.cpp')
| -rw-r--r-- | clang/lib/CodeGen/CGVTables.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CGVTables.cpp b/clang/lib/CodeGen/CGVTables.cpp index c7bb54e0699..6649578fc09 100644 --- a/clang/lib/CodeGen/CGVTables.cpp +++ b/clang/lib/CodeGen/CGVTables.cpp @@ -828,6 +828,9 @@ CodeGenVTables::GenerateClassData(const CXXRecordDecl *RD) { VFTContext->getVFPtrOffsets(RD); } + if (CGDebugInfo *DI = CGM.getModuleDebugInfo()) + DI->completeClassData(RD); + // First off, check whether we've already emitted the v-table and // associated stuff. llvm::GlobalVariable *VTable = GetAddrOfVTable(RD); |

