lto gimple types and debug info
Chris Lattner
clattner@apple.com
Fri Jul 25 15:59:00 GMT 2008
On Jul 25, 2008, at 1:54 AM, Richard Guenther wrote:
>> Sure, typedefs in C/C++ seem clearly useless. I'm just curious how
>> you plan
>> to go about deciding whether things are useless in a more general
>> context.
>> How fine of a granularity do you intend to inspect bits? Trees
>> have lots
>> of random stuff that are hard to identify and unify. Hopefully
>> this will be
>> a good step towards making LTO actually be able to work with source
>> files
>> that come from different languages. Does this mean that all
>> language-specific type info will be removed?
>
> Well, "removed" as in "transformed into bits of the common middle-end
> type system". As we get new fancy optimizations that require
> more information we can easily add to the middle-end type-system.
Ok.
>> More generally, can you detail what your plan is? Is it to remove
>> specific
>> pieces (like typedefs, what else?) or just hack and slash random
>> stuff if it
>> gets in your way? I'm more curious about your approach and
>> "threshold for
>> usefulness" than an abstract statement about how you will remove
>> useless
>> stuff and keep the useful stuff :)
>
> The approach would be to add pieces to an "empty" middle-end
> type system, not to remove things from what the frontends give us.
> This way we don't even need to look at all the stuff that is in
> the frontends, but can concentrate on what is useful and needed
> for the middle-end right now.
Sure, this makes plenty of sense to me (and sounds very *very*
familiar). Do you intend to include things like TBAA in the initial
type system? That is one example of extremely important information
which requires pulling in almost the entire source type system.
-Chris
More information about the Gcc
mailing list