PR target/90418
* config/rs6000/rs6000.c (rs6000_emit_epilogue): Don't load EH
data registers in sibcall epilogues.
Don't add EH_RETURN_STACKADJ_RTX to sp in sibcall epilogues.
From-SVN: r271130
+2019-05-13 David Edelsohn <dje.gcc@gmail.com>
+
+ PR target/90418
+ * config/rs6000/rs6000.c (rs6000_emit_epilogue): Don't load EH
+ data registers in sibcall epilogues.
+ Don't add EH_RETURN_STACKADJ_RTX to sp in sibcall epilogues.
+
2019-05-13 Uroš Bizjak <ubizjak@gmail.com>
PR target/89221
restore_saved_lr (0, exit_func);
/* Load exception handler data registers, if needed. */
- if (crtl->calls_eh_return)
+ if (!sibcall && crtl->calls_eh_return)
{
unsigned int i, regno;
RTX_FRAME_RELATED_P (insn) = 1;
}
- if (crtl->calls_eh_return)
+ if (!sibcall && crtl->calls_eh_return)
{
rtx sa = EH_RETURN_STACKADJ_RTX;
emit_insn (gen_add3_insn (sp_reg_rtx, sp_reg_rtx, sa));