[LLVMbugs] [Bug 865] Coalescer is really confused or something
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Mon Aug 21 15:26:16 PDT 2006
http://llvm.org/bugs/show_bug.cgi?id=865
sabre at nondot.org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|FIXED |
------- Additional Comments From sabre at nondot.org 2006-08-21 17:26 -------
This is definitely an improvement, but not enough. The generated code now looks like this:
_foo:
movl 8(%esp), %ecx
movl 4(%esp), %edx
LBB1_1: #cond_true
movl %edx, %eax
incl %edx
cmpl $40, %ecx
jl LBB1_1 #cond_true
LBB1_2: #bb12
ret
This is *clearly* better than having two movs, but it would be better to have:
_foo:
movl 8(%esp), %ecx
movl 4(%esp), %eax
LBB1_1: #cond_true
incl %eax
cmpl $40, %ecx
jl LBB1_1 #cond_true
LBB1_2: #bb12
ret
I think that this is a coallescing problem, the PHI live-range isn't getting coallesced with the copy into
EAX at the end properly or something.
-Chris
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
More information about the llvm-bugs
mailing list