diff options
author | Naveen H.S <naveen.S@kpitcummins.com> | 2012-03-30 21:41:45 +0000 |
---|---|---|
committer | Kaz Kojima <kkojima@gcc.gnu.org> | 2012-03-30 21:41:45 +0000 |
commit | 57c7433fdc3fcb7b0cfd7b13bd11360a5e17c624 (patch) | |
tree | b1f17f682704a0497d616cde2079f1c3b0079de4 | |
parent | 456fba2651cfb0cb67e44b8354668a0b3f5f5182 (diff) | |
download | gcc-57c7433fdc3fcb7b0cfd7b13bd11360a5e17c624.zip gcc-57c7433fdc3fcb7b0cfd7b13bd11360a5e17c624.tar.gz gcc-57c7433fdc3fcb7b0cfd7b13bd11360a5e17c624.tar.bz2 |
sh.c (push_regs): Skip banked registers when resbank attribute is specified.
* config/sh/sh.c (push_regs): Skip banked registers when
resbank attribute is specified.
(sh_expand_epilogue): Likewise.
Co-Authored-By: Kaz Kojima <kkojima@gcc.gnu.org>
From-SVN: r186024
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/config/sh/sh.c | 8 |
2 files changed, 13 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 294ccaa..d043b8f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2012-03-30 Naveen H.S <naveen.S@kpitcummins.com> + Kaz Kojima <kkojima@gcc.gnu.org> + + * config/sh/sh.c (push_regs): Skip banked registers when + resbank attribute is specified. + (sh_expand_epilogue): Likewise. + 2012-03-30 Richard Henderson <rth@redhat.com> PR debug/52727 diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index 1997300..3e85fcf 100644 --- a/gcc/config/sh/sh.c +++ b/gcc/config/sh/sh.c @@ -6487,7 +6487,9 @@ push_regs (HARD_REG_SET *mask, int interrupt_handler) use_movml = true; } - if (use_movml) + if (sh_cfun_resbank_handler_p ()) + ; /* Do nothing. */ + else if (use_movml) { rtx x, mem, reg, set; rtx sp_reg = gen_rtx_REG (SImode, STACK_POINTER_REGNUM); @@ -7485,7 +7487,9 @@ sh_expand_epilogue (bool sibcall_p) use_movml = true; } - if (use_movml) + if (sh_cfun_resbank_handler_p ()) + ; /* Do nothing. */ + else if (use_movml) { rtx sp_reg = gen_rtx_REG (SImode, STACK_POINTER_REGNUM); |