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: [tree-ssa] tree-mustalias fix


> In message <20031219204859.GG11784@atrey.karlin.mff.cuni.cz>, Jan Hubicka write
> s:
>  >> On Fri, 2003-12-19 at 15:20, Jan Hubicka wrote:
>  >> 
>  >> > I just tested the idea of not considering (plus_expr (addr_expr) (cst))
>  >> > as gimple invariant and it solves testcase (full testing is in progress)
>  >> > and surprisingly enough it also improve Gerald's testcase:
>  >> >
>  >> But that's wrong.  We will not consider that a constant, which may
>  >> prevent propagation of address constants.  This is covering over the
>  >> problem.
>  >This still looks inconsistent for me.
> Huh?
> 
> &x + <const> 
> 
> is clearly an invariant.  What would be inconsistent would be claiming

When &x + <const> is invariant (in this context gimple_min_invariant)
and thus valid gimple operand, it would be consistent requiring
tree-mustalias to not misscompile it as it does currently.
Diego argues that all such invariants shall be folded into x[const2] and
thus there is no need to deal with this particular form of invariant in
real code.
In that case I think it is more consistent to simply prohibit it as we
should not lose any optimization cases and we would get more robust
design.

Honza
> that it is not invariant as you proposed.
> 
> 
> Jeff


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