From 20dca97bbdf6cc9319e32c5731c7df2faf1427b3 Mon Sep 17 00:00:00 2001 From: Bob Wilson Date: Thu, 14 Jun 2007 04:49:42 +0000 Subject: [PATCH] xtensa.c (xtensa_expand_nonlocal_goto): Use validate_replace_rtx instead of replace_rtx. * config/xtensa/xtensa.c (xtensa_expand_nonlocal_goto): Use validate_replace_rtx instead of replace_rtx. (xtensa_expand_prologue): Call df_insn_rescan after replace_rtx. From-SVN: r125697 --- gcc/ChangeLog | 6 ++++++ gcc/config/xtensa/xtensa.c | 14 ++++++++------ 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ecb6746e2b0..dc80a078325 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2007-06-14 Bob Wilson + + * config/xtensa/xtensa.c (xtensa_expand_nonlocal_goto): Use + validate_replace_rtx instead of replace_rtx. + (xtensa_expand_prologue): Call df_insn_rescan after replace_rtx. + 2007-06-14 Danny Smith * config/i386/cygming.h (DWARF_FRAME_REGNUM): Define. diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c index c331a7f27ad..285403ca6f5 100644 --- a/gcc/config/xtensa/xtensa.c +++ b/gcc/config/xtensa/xtensa.c @@ -1180,9 +1180,8 @@ xtensa_expand_nonlocal_goto (rtx *operands) if (GET_CODE (containing_fp) != REG) containing_fp = force_reg (Pmode, containing_fp); - goto_handler = replace_rtx (copy_rtx (goto_handler), - virtual_stack_vars_rtx, - containing_fp); + goto_handler = copy_rtx (goto_handler); + validate_replace_rtx (virtual_stack_vars_rtx, containing_fp, goto_handler); emit_library_call (gen_rtx_SYMBOL_REF (Pmode, "__xtensa_nonlocal_goto"), 0, VOIDmode, 2, @@ -2078,9 +2077,12 @@ xtensa_expand_prologue (void) insn = NEXT_INSN (insn)) { if (INSN_P (insn)) - PATTERN (insn) = replace_rtx (copy_rtx (PATTERN (insn)), - hard_frame_pointer_rtx, - stack_pointer_rtx); + { + PATTERN (insn) = replace_rtx (copy_rtx (PATTERN (insn)), + hard_frame_pointer_rtx, + stack_pointer_rtx); + df_insn_rescan (insn); + } } } else