diff options
| -rw-r--r-- | gcc/ChangeLog | 6 | ||||
| -rw-r--r-- | gcc/config/rs6000/rs6000.c | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5026be9..cbcd64f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,6 +1,12 @@ 2004-12-20 Roger Sayle <roger@eyesopen.com> PR middle-end/18683 + * config/rs6000/rs6000.c (current_file_function_operand): Only check + current_function_decl's DECL_RTL if it has already been set. + +2004-12-20 Roger Sayle <roger@eyesopen.com> + + PR middle-end/18683 * function.c (pop_function_context_from): Don't reset reg_renumber. 2004-12-20 Eric Botcazou <ebotcazou@libertysurf.fr> diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index b2e64f6..8bedc58 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -2960,7 +2960,8 @@ current_file_function_operand (rtx op, return (GET_CODE (op) == SYMBOL_REF && (DEFAULT_ABI != ABI_AIX || SYMBOL_REF_FUNCTION_P (op)) && (SYMBOL_REF_LOCAL_P (op) - || (op == XEXP (DECL_RTL (current_function_decl), 0)))); + || (DECL_RTL_SET_P (current_function_decl) + && op == XEXP (DECL_RTL (current_function_decl), 0)))); } /* Return 1 if this operand is a valid input for a move insn. */ |
