From: Joern Rennecke Date: Tue, 11 Feb 1997 20:53:36 +0000 (+0000) Subject: (calc_live_regs): need not save MACL/MACH when not live, and in leaf function. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=cf641ce6cced9835f60dc4f353c55f545a45207b;p=gcc.git (calc_live_regs): need not save MACL/MACH when not live, and in leaf function. From-SVN: r13627 --- diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index 0ffdeae79ca..0f3a94f7420 100644 --- a/gcc/config/sh/sh.c +++ b/gcc/config/sh/sh.c @@ -2590,10 +2590,9 @@ calc_live_regs (count_ptr, live_regs_mask2) { /* Need to save all the regs ever live. */ if ((regs_ever_live[reg] - || (call_used_regs[reg] && ! fixed_regs[reg] - && regs_ever_live[PR_REG]) - || reg == MACH_REG - || reg == MACL_REG) + || (call_used_regs[reg] + && (! fixed_regs[reg] || reg == MACH_REG || reg == MACL_REG) + && regs_ever_live[PR_REG])) && reg != STACK_POINTER_REGNUM && reg != ARG_POINTER_REGNUM && reg != RETURN_ADDRESS_POINTER_REGNUM && reg != T_REG && reg != GBR_REG)