Re: Use OEP_ADDRESS_OF in emit-rtl.c

2015-10-10 Thread Jan Hubicka
> > Hmm, I see. I wonder how complex the expressions are and if we can't simply > > compare AO properties of MEM_REF at toplevel and then dispatch to > > operand_equal_p (..., OEP_ADDRESS_OF) > > which would make more sense to me. > > I can't see how we can do that comparison conservatively witho

Re: Use OEP_ADDRESS_OF in emit-rtl.c

2015-10-09 Thread Richard Biener
On Thu, 8 Oct 2015, Jan Hubicka wrote: > > On Wed, 7 Oct 2015, Jan Hubicka wrote: > > > > > > > > > > Did you audit all callers of mem_attrs_eq_p to see if they really > > > > only care about that? After all MEM_EXPR, via access paths, encode > > > > type-based alias info and thus replacing one

Re: Use OEP_ADDRESS_OF in emit-rtl.c

2015-10-08 Thread Jan Hubicka
> On Wed, 7 Oct 2015, Jan Hubicka wrote: > > > > > > > Did you audit all callers of mem_attrs_eq_p to see if they really > > > only care about that? After all MEM_EXPR, via access paths, encode > > > type-based alias info and thus replacing one with the other (cse.c use > > > or ifcvt.c use) is

Re: Use OEP_ADDRESS_OF in emit-rtl.c

2015-10-08 Thread Richard Biener
On Wed, 7 Oct 2015, Jan Hubicka wrote: > > > > Did you audit all callers of mem_attrs_eq_p to see if they really > > only care about that? After all MEM_EXPR, via access paths, encode > > type-based alias info and thus replacing one with the other (cse.c use > > or ifcvt.c use) is only valid if

Re: Use OEP_ADDRESS_OF in emit-rtl.c

2015-10-07 Thread Jan Hubicka
> > Did you audit all callers of mem_attrs_eq_p to see if they really > only care about that? After all MEM_EXPR, via access paths, encode > type-based alias info and thus replacing one with the other (cse.c use > or ifcvt.c use) is only valid if that doesn't break dependences. Hmm, expr is used

Re: Use OEP_ADDRESS_OF in emit-rtl.c

2015-10-07 Thread Richard Biener
On Wed, 7 Oct 2015, Jan Hubicka wrote: > Hi, > adding some extra sanity checks to operand_equal_p made me to notice that uses > of operand_equal_p in mem attrs really care about addresses only. The > expression > is tree of the original memory acces MEM RTX was created from and thus the > compar