This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
fix rtl dump crash
- From: Richard Henderson <rth at twiddle dot net>
- To: gcc-patches at gcc dot gnu dot org
- Date: Tue, 3 May 2005 12:09:25 -0700
- Subject: fix rtl dump crash
max_regno is effectively a pass-local variable, despite its
actual existance as a global variable. It's not always up
to date at this point.
r~
* cfg.c (dump_flow_info): Use max_reg_num, not max_regno.
Index: cfg.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/cfg.c,v
retrieving revision 1.90
diff -u -p -r1.90 cfg.c
--- cfg.c 21 Apr 2005 15:47:19 -0000 1.90
+++ cfg.c 3 May 2005 19:03:23 -0000
@@ -471,14 +471,14 @@ check_bb_profile (basic_block bb, FILE *
void
dump_flow_info (FILE *file)
{
- int i;
basic_block bb;
/* There are no pseudo registers after reload. Don't dump them. */
if (reg_n_info && !reload_completed)
{
- fprintf (file, "%d registers.\n", max_regno);
- for (i = FIRST_PSEUDO_REGISTER; i < max_regno; i++)
+ unsigned int i, max = max_reg_num ();
+ fprintf (file, "%d registers.\n", max);
+ for (i = FIRST_PSEUDO_REGISTER; i < max; i++)
if (REG_N_REFS (i))
{
enum reg_class class, altclass;