GCC 4.2.0 Status Report (2007-03-22)
Daniel Berlin
dberlin@dberlin.org
Fri Mar 30 20:11:00 GMT 2007
On 3/30/07, Richard Kenner <kenner@vlsi1.ultra.nyu.edu> wrote:
> > The aliaser is fairly aggressive at removing TREE_ADDRESSABLE from
> > variables that do not need it anymore, so that should not be a problem.
>
> Yes, but you're calling the lang hook, which in theory, is allowed
> to do all sorts of different things. How do those get undone when we find
> *they* aren't needed?
The lang hook is supposed to mark the variable as addressable.
The lang hook should not be changing other things that have an affect
on the *middle end*. No exceptions.
>
> Moreover, what if what you're taking the address of is a COMPONENT_REF
> or some such. Are we saying that's not allowed anymore? Some lang-hooks
> look through them to set TREE_ADDRESSABLE on the underlying decl, but
> your patch only calls it on a DECL_P.
What are you talking about?
The aliaser will remove tree addressable from DECL's if they do not
have their address taken. This includes removing addressable from "a"
if we had &a.b.c.d, it was the only address taking of a, and later
eliminated it.
>
> I think we need to step back a bit and get a definition we can all agree on
> here first.
A definition of what, exactly?
>
More information about the Gcc
mailing list