This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: lto gimple types and debug info
- From: "Richard Guenther" <richard dot guenther at gmail dot com>
- To: "Kenneth Zadeck" <zadeck at naturalbridge dot com>
- Cc: "Arnaud Charlet" <charlet at adacore dot com>, "GCC Development" <gcc at gcc dot gnu dot org>, "Diego Novillo" <dnovillo at google dot com>, "Hubicha, Jan" <jh at suse dot cz>, "Taylor, Ian Lance" <iant at google dot com>, "Ollie Wild" <aaw at google dot com>, "Maddox, Bill" <maddox at google dot com>, jason at redhat dot com, "Rafael Espindola" <espindola at google dot com>
- Date: Fri, 25 Jul 2008 13:50:43 +0200
- Subject: Re: lto gimple types and debug info
- References: <4888AD1F.7080007@naturalbridge.com> <20080724163827.GA16991@adacore.com> <4888B9EE.10204@naturalbridge.com> <20080724213706.GA2101@adacore.com> <4888FBE4.9020205@naturalbridge.com> <20080725072314.GA3503@adacore.com> <4889BD3B.9090001@naturalbridge.com>
On Fri, Jul 25, 2008 at 1:47 PM, Kenneth Zadeck
<zadeck@naturalbridge.com> wrote:
> Arnaud Charlet wrote:
>>>
>>> When danny and it wrote the ipa-type-escape pass, mark mitchell was all
>>> over us because we assumed that the type system had some semantic meaning.
>>> We ended up with a pass that generally finds nothing useful. I would very
>>> much like to redo that pass once we can mark a type as coming from a
>>> language with a real type system.
>>>
>>
>> Did you enable Ada at this time ?
>> What was this pass supposed to do ?
>>
>> Arno
>>
>
> I do not remember. The problem is not dealing with Ada, it is dealing with
> Ada as if it was C. What we do is correct for ada or java, it is just much
> more conservative that anyone would ever be if one were writing a compiler
> for those languages.
> the pass determines if all uses of a type are completely encapsulated within
> the compilation unit. Most types are generally not, but if you compile with
> -combine (which only works for C), then in theory there would be more of
> them.
>
> The idea is that if you have a fully encapsulated type, then the compiler
> would be free to implement any variables of this type as it saw fit
> (changing the alignment, reordering the fields, peeling ...).
I actually never understood why we need type escape analysis here.
Can't we just see if the actual objects do escape?
Richard.