Commit afa7c903 by Alexandre Oliva Committed by Alexandre Oliva

[SFN] start rtl block with label, then markers

Emitting markers before labels turned out to not be worth the trouble.
The markers outside BBs confuse the ebb scheduler, and they don't add
any useful information.  I'll arrange for markers to be moved past
labels, even in gimple, but for now this will fix the two remaining
known problems on ia64.

for  gcc/ChangeLog

	PR bootstrap/83396
	* cfgexpand.c (expand_gimple_basic_block): Expand label first,
	even if there are markers before it.
	* cfgrtl.c (rtl_verify_bb_layout): Reject DEBUG_INSNs outside BBs.

From-SVN: r255833
parent 1e6bc145
2017-12-19 Alexandre Oliva <aoliva@redhat.com>
PR bootstrap/83396
* cfgexpand.c (expand_gimple_basic_block): Expand label first,
even if there are markers before it.
* cfgrtl.c (rtl_verify_bb_layout): Reject DEBUG_INSNs outside BBs.
2017-12-19 Jakub Jelinek <jakub@redhat.com>
* read-rtl.c (parse_reg_note_name): Replace Yoda conditions with
......@@ -5515,20 +5515,16 @@ expand_gimple_basic_block (basic_block bb, bool disable_tail_calls)
gimple *label_stmt = stmt;
rtx_code_label **elt = lab_rtx_for_bb->get (bb);
if (stmt)
/* We'll get to it in the loop below, and get back to
emit_label_and_note then. */
;
else if (stmt || elt)
if (stmt || elt)
{
emit_label_and_note:
gcc_checking_assert (!note);
last = get_last_insn ();
if (stmt)
{
expand_gimple_stmt (stmt);
gsi_next (&gsi);
if (gsi_stmt (gsi) == stmt)
gsi_next (&gsi);
}
if (elt)
......@@ -5555,7 +5551,7 @@ expand_gimple_basic_block (basic_block bb, bool disable_tail_calls)
stmt = gsi_stmt (gsi);
if (stmt == label_stmt)
goto emit_label_and_note;
continue;
/* If this statement is a non-debug one, and we generate debug
insns, then this one might be the last real use of a TERed
......
......@@ -2954,7 +2954,6 @@ rtl_verify_bb_layout (void)
{
case BARRIER:
case NOTE:
case DEBUG_INSN:
break;
case CODE_LABEL:
......
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