diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 12ff04866aaf..c41ad229d9dc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2013-08-26 Joern Rennecke + + * reload.c (find_valid_class): Allow classes that do not include + FIRST_PSEUDO_REGISTER - 1. + 2013-08-26 Jan Hubicka * cgraph.c (cgraph_redirect_edge_call_stmt_to_callee): Fix formatting; diff --git a/gcc/reload.c b/gcc/reload.c index b15f3b20eb7d..b69660d16af8 100644 --- a/gcc/reload.c +++ b/gcc/reload.c @@ -680,8 +680,8 @@ find_valid_class (enum machine_mode outer ATTRIBUTE_UNUSED, if (HARD_REGNO_MODE_OK (regno, inner)) { good = 1; - if (! TEST_HARD_REG_BIT (reg_class_contents[rclass], regno + n) - || ! HARD_REGNO_MODE_OK (regno + n, outer)) + if (TEST_HARD_REG_BIT (reg_class_contents[rclass], regno + n) + && ! HARD_REGNO_MODE_OK (regno + n, outer)) bad = 1; } }