This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/22563] [3.4/4.0/4.1 Regression] performance regression for gcc newer than 2.95
- From: "dann at godzilla dot ics dot uci dot edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 25 Aug 2005 02:49:57 -0000
- Subject: [Bug rtl-optimization/22563] [3.4/4.0/4.1 Regression] performance regression for gcc newer than 2.95
- References: <20050719191302.22563.danalis@cis.udel.edu>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- 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