OSDN Git Service

* cfg.c (dump_flow_info): Guard against NULL regno_reg_rtx[i].
authorhp <hp@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 30 Mar 2002 00:40:53 +0000 (00:40 +0000)
committerhp <hp@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 30 Mar 2002 00:40:53 +0000 (00:40 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@51589 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/cfg.c

index b4d452d..6f38ddb 100644 (file)
@@ -1,3 +1,7 @@
+2002-03-29  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * cfg.c (dump_flow_info): Guard against NULL regno_reg_rtx[i].
+
 2002-03-29  Richard Henderson  <rth@redhat.com>
 
        PR target/5886
index 9204505..0a71867 100644 (file)
--- a/gcc/cfg.c
+++ b/gcc/cfg.c
@@ -472,7 +472,7 @@ dump_flow_info (file)
        if (REG_N_SETS (i))
          fprintf (file, "; set %d time%s", REG_N_SETS (i),
                   (REG_N_SETS (i) == 1) ? "" : "s");
-       if (REG_USERVAR_P (regno_reg_rtx[i]))
+       if (regno_reg_rtx[i] != NULL && REG_USERVAR_P (regno_reg_rtx[i]))
          fprintf (file, "; user var");
        if (REG_N_DEATHS (i) != 1)
          fprintf (file, "; dies in %d places", REG_N_DEATHS (i));
@@ -480,7 +480,8 @@ dump_flow_info (file)
          fprintf (file, "; crosses 1 call");
        else if (REG_N_CALLS_CROSSED (i))
          fprintf (file, "; crosses %d calls", REG_N_CALLS_CROSSED (i));
-       if (PSEUDO_REGNO_BYTES (i) != UNITS_PER_WORD)
+       if (regno_reg_rtx[i] != NULL
+           && PSEUDO_REGNO_BYTES (i) != UNITS_PER_WORD)
          fprintf (file, "; %d bytes", PSEUDO_REGNO_BYTES (i));
 
        class = reg_preferred_class (i);
@@ -497,7 +498,7 @@ dump_flow_info (file)
                       reg_class_names[(int) altclass]);
          }
 
-       if (REG_POINTER (regno_reg_rtx[i]))
+       if (regno_reg_rtx[i] != NULL && REG_POINTER (regno_reg_rtx[i]))
          fprintf (file, "; pointer");
        fprintf (file, ".\n");
       }