aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/sh
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2001-01-13 08:09:48 +0000
committerAlexandre Oliva <aoliva@gcc.gnu.org>2001-01-13 08:09:48 +0000
commit89d4bc35990437e33c09abb1e29cafd47ef00ffc (patch)
treef58e64fd6bb1732a1bcda17f885d7716e45f0a1a /gcc/config/sh
parentb90dbca6f3b2770ce7b2553b06f8883d74f0ad0b (diff)
downloadgcc-89d4bc35990437e33c09abb1e29cafd47ef00ffc.zip
gcc-89d4bc35990437e33c09abb1e29cafd47ef00ffc.tar.gz
gcc-89d4bc35990437e33c09abb1e29cafd47ef00ffc.tar.bz2
* config/sh/sh.c (sh_expand_epilogue): Use PR explicitly.
From-SVN: r38977
Diffstat (limited to 'gcc/config/sh')
-rw-r--r--gcc/config/sh/sh.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index d0142e6..ce50f51 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -4048,6 +4048,10 @@ sh_expand_epilogue ()
/* Switch back to the normal stack if necessary. */
if (sp_switch)
emit_insn (gen_sp_switch_2 ());
+
+ /* Tell flow the insn that pops PR isn't dead. */
+ if (live_regs_mask & (1 << PR_REG))
+ emit_insn (gen_rtx_USE (VOIDmode, gen_rtx_REG (SImode, PR_REG)));
}
static int sh_need_epilogue_known = 0;