summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/mn10300/mn10300.c2
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5d25767cf9e..d887424cd44 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2011-01-31 Nick Clifton <nickc@redhat.com>
+
+ * config/mn10300/mn10300.c (mn10300_regno_in_class_p): Check for
+ reg_renumber returning an INVALID_REGNUM.
+
2011-01-31 Alexandre Oliva <aoliva@redhat.com>
PR libgcj/44341
diff --git a/gcc/config/mn10300/mn10300.c b/gcc/config/mn10300/mn10300.c
index cbdf02dab22..6b68166059c 100644
--- a/gcc/config/mn10300/mn10300.c
+++ b/gcc/config/mn10300/mn10300.c
@@ -1996,6 +1996,8 @@ mn10300_regno_in_class_p (unsigned regno, int rclass, bool strict)
if (!reg_renumber)
return false;
regno = reg_renumber[regno];
+ if (regno == INVALID_REGNUM)
+ return false;
}
return TEST_HARD_REG_BIT (reg_class_contents[rclass], regno);
}