This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/31025] [dataflow] Crash in caller-save.c due to x87 math
- From: "bonzini at gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 15 Mar 2007 17:03:31 -0000
- Subject: [Bug rtl-optimization/31025] [dataflow] Crash in caller-save.c due to x87 math
- References: <bug-31025-7849@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- 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