diff options
author | Roger Sayle <roger@eyesopen.com> | 2004-12-21 03:18:47 +0000 |
---|---|---|
committer | Roger Sayle <sayle@gcc.gnu.org> | 2004-12-21 03:18:47 +0000 |
commit | bd340349092b1d189d798f8d3654244b4141da45 (patch) | |
tree | 4f5a15e5ac68ef18d670c8a27bd016bc7bba50fb /gcc | |
parent | 5fdf61fee32a4b2b2dd2e2884a43c730dd5f90d1 (diff) | |
download | gcc-bd340349092b1d189d798f8d3654244b4141da45.zip gcc-bd340349092b1d189d798f8d3654244b4141da45.tar.gz gcc-bd340349092b1d189d798f8d3654244b4141da45.tar.bz2 |
re PR middle-end/18683 (seg fault in local allocate)
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.
From-SVN: r92453
Diffstat (limited to 'gcc')
-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. */ |