Re-run of loop pass
Jeffrey A Law
law@cygnus.com
Fri Oct 23 02:57:00 GMT 1998
In message < 13871.53637.686739.360606@ongaonga.elec.canterbury.ac.nz >you writ
e:
> Michael Hayes writes:
> > I've done some experimentation with this code snippet. With
> > -funroll-loops or BCT optimisation the generated code is _attrocious_
> > since the constant iteration count cannot be determined. The patch at
> > the end seems to fix this problem...
>
> I've come up with a better patch that tries to determine what the
> expressions for the loop initial and final values are if they are not
> constant. If the initial and final expressions are the sum of an
> equivalent base register and some constants, then the initial and
> final values are replaced with the constants. The number of loop
> iterations is now simply calculable and thus the loop unroll and loop
> BCT optimisations are happy.
Does this latest version subsume your earlier unroll.c changes?
[ Still catching up after being away for a few days... ]
jeff
More information about the Gcc
mailing list