------- Comment #1 from bonzini at gnu dot org  2007-03-15 17:03 -------
Created an attachment (id=13211)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13211&action=view)
patch that fixes the bug, untested

REG_N_CALLS_CROSSED is computed using live, not urec.  caller_save uses
it to decide what to save (in advance), and urec to decide whether to save
something (while scanning the insns).

reg 58 is not in live but it is in urec.  So, caller_save thinks that reg 58
doesn't have to be saved (using live) and yet it tries to save it (using urec).


-- 


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

Reply via email to