mirror of git://gcc.gnu.org/git/gcc.git
re PR rtl-optimization/48721 (ICE: verify_flow_info failed: missing barrier after block 6 with -foptimize-sibling-calls -fsched2-use-superblocks)
PR rtl-optimization/48721 * sched-ebb.c (begin_move_insn): Insert empty unreachable block after BARRIER if insn is followed by it. From-SVN: r181855
This commit is contained in:
parent
23ffb99e94
commit
bbf81a5fae
|
@ -1,3 +1,9 @@
|
||||||
|
2011-11-30 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
|
PR rtl-optimization/48721
|
||||||
|
* sched-ebb.c (begin_move_insn): Insert empty unreachable
|
||||||
|
block after BARRIER if insn is followed by it.
|
||||||
|
|
||||||
2011-11-30 Richard Henderson <rth@redhat.com>
|
2011-11-30 Richard Henderson <rth@redhat.com>
|
||||||
|
|
||||||
* config/sparc/sparc-opts.h (enum sparc_memory_model_type): New.
|
* config/sparc/sparc-opts.h (enum sparc_memory_model_type): New.
|
||||||
|
|
|
@ -191,8 +191,13 @@ begin_move_insn (rtx insn, rtx last)
|
||||||
gcc_assert (NOTE_INSN_BASIC_BLOCK_P (BB_END (bb)));
|
gcc_assert (NOTE_INSN_BASIC_BLOCK_P (BB_END (bb)));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
/* Create an empty unreachable block after the INSN. */
|
{
|
||||||
bb = create_basic_block (NEXT_INSN (insn), NULL_RTX, last_bb);
|
/* Create an empty unreachable block after the INSN. */
|
||||||
|
rtx next = NEXT_INSN (insn);
|
||||||
|
if (next && BARRIER_P (next))
|
||||||
|
next = NEXT_INSN (next);
|
||||||
|
bb = create_basic_block (next, NULL_RTX, last_bb);
|
||||||
|
}
|
||||||
|
|
||||||
/* split_edge () creates BB before E->DEST. Keep in mind, that
|
/* split_edge () creates BB before E->DEST. Keep in mind, that
|
||||||
this operation extends scheduling region till the end of BB.
|
this operation extends scheduling region till the end of BB.
|
||||||
|
|
Loading…
Reference in New Issue