re PR target/78862 (tile*: ICE with -fstack-protetor-strong)

PR target/78862
* config/tilegx/tilegx.md (tilegx_expand_prologue): Add blockage
after initial stackframe link reg save.
* config/tilepro/tilepro.md (tilepro_expand_prologue): Likewise.

From-SVN: r245159
This commit is contained in:
Walter Lee 2017-02-03 18:41:57 +00:00 committed by Walter Lee
parent d9327911bf
commit 86010a086b
3 changed files with 17 additions and 4 deletions

View File

@ -1,3 +1,10 @@
2017-02-03 Walter Lee <walt@tilera.com>
PR target/78862
* config/tilegx/tilegx.md (tilegx_expand_prologue): Add blockage
after initial stackframe link reg save.
* config/tilepro/tilepro.md (tilepro_expand_prologue): Likewise.
2017-02-03 Jakub Jelinek <jakub@redhat.com>
PR target/79354

View File

@ -3998,8 +3998,11 @@ tilegx_expand_prologue (void)
/* Save lr first in its special location because code after this
might use the link register as a scratch register. */
if (df_regs_ever_live_p (TILEGX_LINK_REGNUM) || crtl->calls_eh_return)
FRP (frame_emit_store (TILEGX_LINK_REGNUM, TILEGX_LINK_REGNUM,
stack_pointer_rtx, stack_pointer_rtx, 0));
{
FRP (frame_emit_store (TILEGX_LINK_REGNUM, TILEGX_LINK_REGNUM,
stack_pointer_rtx, stack_pointer_rtx, 0));
emit_insn (gen_blockage ());
}
if (total_size == 0)
{

View File

@ -3533,8 +3533,11 @@ tilepro_expand_prologue (void)
/* Save lr first in its special location because code after this
might use the link register as a scratch register. */
if (df_regs_ever_live_p (TILEPRO_LINK_REGNUM) || crtl->calls_eh_return)
FRP (frame_emit_store (TILEPRO_LINK_REGNUM, TILEPRO_LINK_REGNUM,
stack_pointer_rtx, stack_pointer_rtx, 0));
{
FRP (frame_emit_store (TILEPRO_LINK_REGNUM, TILEPRO_LINK_REGNUM,
stack_pointer_rtx, stack_pointer_rtx, 0));
emit_insn (gen_blockage ());
}
if (total_size == 0)
{