reload.c (regno_clobbered_p): Add a gcc_assert that regno refers to a hard register.
authorRoger Sayle <roger@eyesopen.com>
Thu, 23 Dec 2004 22:48:51 +0000 (22:48 +0000)
committerRoger Sayle <sayle@gcc.gnu.org>
Thu, 23 Dec 2004 22:48:51 +0000 (22:48 +0000)
* reload.c (regno_clobbered_p): Add a gcc_assert that regno
refers to a hard register.

From-SVN: r92574

gcc/ChangeLog
gcc/reload.c

index c84ae79e5860d783f664198ba4a6db6d1099dc30..82ee9a4c79e0e62aab4c9f667aea7c9a8df33f86 100644 (file)
@@ -1,3 +1,8 @@
+2004-12-23  Roger Sayle  <roger@eyesopen.com>
+
+       * reload.c (regno_clobbered_p): Add a gcc_assert that regno
+       refers to a hard register.
+
 2004-12-23  Mark Mitchell  <mark@codesourcery.com>
 
        * gimplify.c (gimplify_modify_expr_rhs): Use types_compatible_p.
index 9c0836a53b7114c6740aa2f471236bcdfe9fb4c4..08a22deffaba3fa87f9a3671b7b69c64b0bf1cca 100644 (file)
@@ -6947,8 +6947,13 @@ int
 regno_clobbered_p (unsigned int regno, rtx insn, enum machine_mode mode,
                   int sets)
 {
-  unsigned int nregs = hard_regno_nregs[regno][mode];
-  unsigned int endregno = regno + nregs;
+  unsigned int nregs, endregno;
+
+  /* regno must be a hard register.  */
+  gcc_assert (regno < FIRST_PSEUDO_REGISTER);
+
+  nregs = hard_regno_nregs[regno][mode];
+  endregno = regno + nregs;
 
   if ((GET_CODE (PATTERN (insn)) == CLOBBER
        || (sets && GET_CODE (PATTERN (insn)) == SET))