This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Trust TREE_ADDRESSABLE


On Wed, Jun 11, 2014 at 11:08 AM, Eric Botcazou <ebotcazou@adacore.com> wrote:
>> Note that I'm happy to revert the change.
>
> Thanks.
>
>> I am hesitant to any approach that overloads TREE_ADDRESSABLE even more.
>> It already is used for two (slightly) different things - first the
>> "old" meaning that the address of the symbol is needed, second, that
>> the symbol is aliased by pointers.  Those are of course related, but
>> as you see they are not 100% equivalent.
>>
>> As I already added DECL_NONALIASED (for VAR_DECLs) to "fix" that
>> coverage counter issue (those are TREE_STATIC but they have their
>> address taken - still we know that no pointers alias the accesses),
>> we can as well rely on that flag - but then we should set it whenever
>> a TU-local decl does not have its address taken (!TREE_ADDRESSABLE).
>
> Why not just make the change to may_be_aliased in LTO mode, with a comment
> saying that TREE_PUBLIC and DECL_EXTERNAL aren't fully correct any longer?

Because that's not the point and because it feels like a hack ;)

I could do || in_lto_p and make LTO "properly" set TREE_ADDRESSABLE.
But then we can make the IPA machinery "properly" set TREE_ADDRESSABLE
as well, unconditionally, just like with my
proposed patch to fix the fallout.

Richard.

> --
> Eric Botcazou


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]