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, updated] Make emulated TLS lto-friendly.


On 07/13/2010 01:46 PM, Richard Guenther wrote:
> On Tue, Jul 13, 2010 at 10:01 PM, Richard Henderson <rth@redhat.com> wrote:
>> Test #6.  Final?
>>
>> Aliases are supposed to work now.
> 
> The forwprop piece disables propagating &p->foo like addresses which
> is useful and important.

Hum.  Perhaps the check needs to be pushed farther down into
forward_propagate_addr_expr{,_1}.  But...

> Also forwprop doesn't propagate into PHIs,
> so I don't understand what's the issue here (CCP does, though).

The best way I can figure to prevent propagation into PHIs is to declare
&tlsvar (without native support) to be !is_gimple_{val,min_invariant}.

That change, however, alters the valid arguments to MEM_REF.  In that
&tlsvar is no longer valid.  Now, one could spend forever slightly 
tweeking all of the myriad predicates involved, but what it comes down
to is that forwprop does not have the same checks that verify_expr does.



r~


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