summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authordj <dj@138bc75d-0d04-0410-961f-82ee72b054a4>2005-12-20 01:04:24 +0000
committerdj <dj@138bc75d-0d04-0410-961f-82ee72b054a4>2005-12-20 01:04:24 +0000
commitb27beddde6c4355ee940f9cc5a67e1b37ad93bb8 (patch)
treef47d6a02899770d66f03dd2d18598a65d3240131 /gcc
parent93304f99bce56c692c4a59794ea9c02af21258a1 (diff)
downloadgcc-b27beddde6c4355ee940f9cc5a67e1b37ad93bb8.tar.gz
* reload1.c (spill_failure): Dump failed reload data to dump file.
(find_reload_regs): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@108830 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/reload1.c8
2 files changed, 13 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fdaf09f670e..2bd2e7cca9b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2005-12-19 DJ Delorie <dj@redhat.com>
+
+ * reload1.c (spill_failure): Dump reload data to dump file.
+ (find_reload_regs): Likewise.
+
2005-12-19 Zdenek Dvorak <dvorakz@suse.cz>
PR tree-optimization/24793
diff --git a/gcc/reload1.c b/gcc/reload1.c
index 29da1216e5a..64946375154 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -1831,6 +1831,8 @@ find_reload_regs (struct insn_chain *chain)
&& rld[r].regno == -1)
if (! find_reg (chain, i))
{
+ if (dump_file)
+ fprintf (dump_file, "reload failure for reload %d\n", r);
spill_failure (chain->insn, rld[r].class);
failure = 1;
return;
@@ -1899,6 +1901,12 @@ spill_failure (rtx insn, enum reg_class class)
{
error ("unable to find a register to spill in class %qs",
reg_class_names[class]);
+
+ if (dump_file)
+ {
+ fprintf (dump_file, "\nReloads for insn # %d\n", INSN_UID (insn));
+ debug_reload_to_stream (dump_file);
+ }
fatal_insn ("this is the insn:", insn);
}
}