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: Regression due to tree loop opt / expand weirdness


Hello,

> On Sun, Oct 03, 2004 at 09:40:12PM +0200, Ulrich Weigand wrote:
> > Richard, I appears you've added the valid_pointer_mode check to 
> > expand_expr_addr_expr -- could you elaborate how the back-end is
> > supposed to handle this?
> 
> The reason to allow non-Pmode is that otherwise ilp32 on 64-bit targets
> breaks.  That's the narrowest condition I could find that keeps ia64-hpux
> working.  Computing symbol_ref in ptr_mode and not Pmode is not a new
> thing, it's been done for quite some time.
> 
> As for why the tree loop optimizer is playing such silly narrowing games
> with pointers, ask Zdenek.  I've already expressed my opinion that it's
> wrong, but it has been an uphill fight trying to convince him.

could you please explain in more detail what you mean by "wrong"?  It
preserves semantics of the program (unless there is some weird property
of pointers I am not aware of).

It may be true that in some cases using this possibility may not be the
best choice from the performance point of view (I by no means claim that
the cost function in ivopts is perfect; once I get over the worse
problems with new loop optimizer, I will try to improve it).  However
in general I believe it is perfectly legal, and in some (not so weird)
cases also the best possibility.

Zdenek


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