[Bug rtl-optimization/22563] [3.4/4.0/4.1 Regression] performance regression for gcc newer than 2.95
dann at godzilla dot ics dot uci dot edu
gcc-bugzilla@gcc.gnu.org
Thu Aug 25 03:26:00 GMT 2005
------- Additional Comments From dann at godzilla dot ics dot uci dot edu 2005-08-25 02:49 -------
This message:
http://gcc.gnu.org/ml/gcc/2005-08/msg00208.html
was asking for the reason for the slowdown for S000005e
AFAICT the inner loop for the benchmark (in s000005e_test) gets compiled to:
.L153:
fstl (%edx)
leal 8(%edx), %eax
fstl (%eax)
fstl 8(%eax)
fstl 16(%eax)
fstl 24(%eax)
fstl 32(%eax)
fstl 40(%eax)
fstl 48(%eax)
leal 56(%eax), %edx
cmpl %edx, %ecx
jne .L153
and to:
.L9:
movl $0, (%edx)
movl $1074266112, 4(%edx)
movl $0, 8(%edx)
movl $1074266112, 12(%edx)
movl $0, 16(%edx)
movl $1074266112, 20(%edx)
movl $0, 24(%edx)
movl $1074266112, 28(%edx)
movl $0, 32(%edx)
movl $1074266112, 36(%edx)
movl $0, 40(%edx)
movl $1074266112, 44(%edx)
movl $0, 48(%edx)
movl $1074266112, 52(%edx)
movl $0, 56(%edx)
movl $1074266112, 60(%edx)
addl $64, %edx
cmpl %edx, %ebx
jne .L9
by 4.1
The 4.1 code looks much worse...
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22563
More information about the Gcc-bugs
mailing list