------- Additional Comments From andrewhutchinson at cox dot net  2005-01-28 
20:15 -------
Subject: Re:  Loop optimizer fails to reverse
 simple loop

GCC 3.3.1 did reverse testloop3 but not testloop2() or testloop(4).  So 
4.0 gets 4/5 right an 3.3.1 3/5 right.

Its complicated by other optimisations though on my inner loop code so I 
could not say if testloop3 is a regression. Im trying to get some 
results from 3.4.x

The only issue with inconsistent patterns is that it makes matching 
backend patterns more likely to fail. As we need to catch GE 0 or EQ -1 
after decrement for almost identical code structure. I am not sure if 
this is a real probelm or one that gcc will take care of by alternate 
patter substitutions.


pinskia at gcc dot gnu dot org wrote:

>------- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-28 
>19:54 -------
>Confirmed, we should be able to do this on the tree level but don't for 
>testloop2, testloop3, testloop4.
>
>To answer this question:
>*  - why is gcc inconsistent in loop reversal bounds????
>Because sometimes we do loop reversal on the tree level or the rtl level.  See 
>above about where we 
>don't do it on the tree level.
>
>Do you know if all of these loops were loop reversal for say 3.4.0?
>
>  
>





-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19676

Reply via email to