This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/21488] [4.0/4.1 regression] Not copy propagating single-argument PHIs causes out-of-ssa coalescing failure
- From: "steven at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 10 May 2005 13:29:16 -0000
- Subject: [Bug tree-optimization/21488] [4.0/4.1 regression] Not copy propagating single-argument PHIs causes out-of-ssa coalescing failure
- References: <20050510124823.21488.steven@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From steven at gcc dot gnu dot org 2005-05-10 13:29 -------
Actually, GCC 4.0 has this problem also.
GCC 3.3:
foo:
pushq %rbp
movl $1, %ebp
pushq %rbx
movl $5, %ebx
subq $8, %rsp
.p2align 4,,7
.L6:
movl %ebx, %edi
incl %ebp
addl $3, %ebx
call bar
cmpl $29, %ebp
jbe .L6
addq $8, %rsp
movl $89, %eax
popq %rbx
popq %rbp
ret
GCC 4.0:
foo:
pushq %rbx
movl $5, %ebx
jmp .L2
.p2align 4,,7
.L7:
movl %eax, %ebx
.L2:
movl %ebx, %edi
call bar
leal 3(%rbx), %eax
cmpl $92, %eax
jne .L7
movl %ebx, %eax
popq %rbx
ret
GCC CVS head as of today:
foo:
pushq %rbx
movl $5, %ebx
jmp .L2
.p2align 4,,7
.L7:
movl %eax, %ebx
.L2:
movl %ebx, %edi
call bar
leal 3(%rbx), %eax
cmpl $92, %eax
jne .L7
movl %ebx, %eax
popq %rbx
ret
--
What |Removed |Added
----------------------------------------------------------------------------
Summary|[4.1 regression] Not copy |[4.0/4.1 regression] Not
|propagating single-argument |copy propagating single-
|PHIs causes out-of-ssa |argument PHIs causes out-of-
|coalescing failure |ssa coalescing failure
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21488