------- Comment #4 from rguenth at gcc dot gnu dot org 2009-10-30 22:50 -------
But:
static unsigned int
tree_complete_unroll_inner (void)
{
unsigned ret = 0;
loop_optimizer_init (LOOPS_NORMAL
| LOOPS_HAVE_RECORDED_EXITS);
if (number_of_loops () > 1)
{
scev_initialize ();
ret = tree_unroll_loops_completely (optimize >= 3, false);
so it will not allow the body to increase in code-size when not
compiling with -O3. Unrolling the loop in your example does
increase code size.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41881