> 
> >
> > We do need to have the option to turn this optimization off; preferably we 
> > would make off the default for Darwin. Other platforms that use LLDB as 
> > their primary debugger may want to do the same thing.
> >
> > Is there no way to fix LLDB so it actually loads in the other dsyms and 
> > finds the full definition of the type? It would seem unfortunate to have 
> > such a bloated debug info format (not only for this optimization, but for 
> > the existing -flimit-debug-info optimizations and anything else we might 
> > think of in the future where we can ensure that some debug info is already 
> > availabel in another file).
> 
> We can fix LLDB but at what cost? If we don't know where a "foo" base class 
> comes from, should we start download _all_ debug info for _all_ shared 
> libraries until we find it? I don't really like that solution. I would like 
> to see the full base class should always be there and would rather not have 
> to use "-fno-limit-debug-info" which would make the debug info really really 
> really bloated.
> 
> Really really bloated? 
> 
> a) -flimit-debug-info is a more aggressive optimization than the vtable 
> optimization - it will cause many pointer uses to emit only declarations and 
> not definitions in the debug info. (it was even more aggressive before I 
> fixed it 3 months ago - if you were using -flimit-debug-info prior to that 
> then you're already far more tolerant to missing definitions than you realize)

I was saying that using "-fno-limit-debug-info" should not try to cull _any_ 
debug info and would result in all types being emitted with complete 
definitions, no?

> 
> 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 don't consider bloat being something that helps us to completely define a 
type that is going to be use when debugging so we can show the entire type and 
its member variables to the user. Also to be able to call functions on the base 
class is helpful too for people evaluating expressions. So I do realize you 
guys consider this bloat, but this information to us is important for the debug 
info to be useful. 



_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to