r188739 - Revert "Revert "Revert "Revert "DebugInfo: Omit debug info for dynamic classes in TUs that do not have the vtable for that class""""

Greg Clayton gclayton at apple.com
Tue Dec 17 13:11:14 PST 2013


On Dec 17, 2013, at 12:39 PM, Reid Kleckner <rnk at google.com> wrote:

> On Tue, Dec 17, 2013 at 12:19 PM, David Blaikie <dblaikie at gmail.com> wrote:
> b) -flimit-debug-info is worth, at a guess, somewhere between 1 and 5%. This vtable optimization is worth closer to 20%. That's /serious/ bloat to consider accepting.
> 
> I think you could address the concerns that Apple has without losing the 20% gain by emitting debug info for base classes in the TU with the key function for the derived class, and not all TUs requiring a complete type.  Does that make sense?
> 
> Somebody should implement that and compare object file size with gcc on some non-clang project, because we don't actually use that many polymorphic classes. 

This might be what is currently implemented. The problem here is that people are linking against a class from another shared library where there will never be a TU that contains the full definition.






More information about the cfe-commits mailing list