This is the mail archive of the gcc@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: gcc3 vs 176.gcc


On Wed, Jan 09, 2002 at 11:30:42AM -0800, Geoff Keating wrote:
> > Could we change the aliasing check as follows?  First check for
> > whether two memrefs are accessed off the same register(s); if they
> > are, we know at once whether the memrefs interfere or not (depending
> > on the offsets).  Only if the result of this check is indeterminate
> > do we look at the aliasing info.
> 
> Would this slow the compiler?

Whether it slows the compiler is less of an issue that does
this work everywhere?

Consider, for instance, ia64, which does not have any addressing
mode containing a constant offset.  So it is extremely easy for
us to loose track of which "absolute" memory address is being
referenced.

So a test case workaround that is successful on, say, powerpc may
fail on ia64.  And if we've made promises about what will and will
not work, we've now dug ourselves into a nasty hole.

I will resist attempts to do anything more than warn when we detect
situations in which type-based aliasing can be shown to give the 
wrong answer.  We should make absolutely no promises to do anything
in particular with this undefined behaviour.


r~


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