------- Comment #7 from vmakarov at redhat dot com  2008-09-17 01:10 -------
The patch I mentioned contains the following code at the end of
ira-lives.c::process_bb_node_lives

for all uses: mark uses as live

for all clobbers: mark them as live

for all clobbers: mark them dead

The r25 are in uses and clobbers, so this code makes r25 dead on traversing to
bb start which is quite wrong and results in that p171 does not conflict with
r25.  Besides the part of code for building conflicts is wrong, it is also too
conservative.  The input should conflict only with *early* clobbers. 
Processing only early clobbers on the two last line solves the problem (regular
clobbers are still processed in ira-lives.c::process_bb_node_lives with defs).

I'll sent the patch soon.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37535

Reply via email to