Commit 9fdcdc74 by Kaz Kojima

re PR target/39523 (SH: global registers are wrongly saved)

	PR target/39523
	* config/sh/sh.c (calc_live_regs): Fix condition for global
	registers except PIC_OFFSET_TABLE_REGNUM.

From-SVN: r145077
parent 46994828
2009-03-25 Kaz Kojima <kkojima@gcc.gnu.org>
PR target/39523
* config/sh/sh.c (calc_live_regs): Fix condition for global
registers except PIC_OFFSET_TABLE_REGNUM.
2009-03-25 Kai Tietz <kai.tietz@onevision.com>
PR/39518
......
......@@ -5966,7 +5966,9 @@ calc_live_regs (HARD_REG_SET *live_regs_mask)
&& crtl->args.info.call_cookie
&& reg == PIC_OFFSET_TABLE_REGNUM)
|| (df_regs_ever_live_p (reg)
&& (!call_really_used_regs[reg]
&& ((!call_really_used_regs[reg]
&& !(reg != PIC_OFFSET_TABLE_REGNUM
&& fixed_regs[reg] && call_used_regs[reg]))
|| (trapa_handler && reg == FPSCR_REG && TARGET_FPU_ANY)))
|| (crtl->calls_eh_return
&& (reg == EH_RETURN_DATA_REGNO (0)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment