--- Comment #4 from pluto at agmk dot net 2006-09-12 12:58 ---
i dont't think it's invalid report.
-funswitch-loop produces only slightly better results.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28957
--- Comment #3 from pluto at agmk dot net 2006-09-05 21:35 ---
(In reply to comment #1)
> -funswitch-loops fixes the loops.
i don't think it is fixed. imho this is only a partial fix.
> For the first function, we get:
> .L4:
> movl%ebx, (%esp)
> call*%esi
>
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-09-05 21:11 ---
So this is either fixed with -funswitch-loops and/or -O3 which enables
-funswitch-loops.
And this has been fixed since 3.4.0 which added -funswitch-loops.
--
pinskia at gcc dot gnu dot org changed:
W
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-09-05 21:08 ---
-funswitch-loops fixes the loops.
For the first function, we get:
.L4:
movl%ebx, (%esp)
call*%esi
jmp .L4
and:
.L3:
movl(%ebx), %eax
movl%ebx, (%esp)