re PR rtl-optimization/42511 (bootstrap error in stage3 on alpha-linux-gnu)

* ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.

	PR target/42511
	* ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
	note itself is not function_invariant_p.

From-SVN: r155693
This commit is contained in:
Uros Bizjak 2010-01-07 15:59:59 +01:00 committed by Uros Bizjak
parent 472bb1ca33
commit 2e3dce632f
2 changed files with 16 additions and 2 deletions

View File

@ -1,3 +1,11 @@
2010-01-07 Uros Bizjak <ubizjak@gmail.com>
* ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.
PR target/42511
* ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
note itself is not function_invariant_p.
2010-01-05 Eric Botcazou <ebotcazou@adacore.com>
PR target/42564

View File

@ -4040,7 +4040,8 @@ dead_or_predicable (basic_block test_bb, basic_block merge_bb,
if (! note)
continue;
set = single_set (insn);
if (!set || !function_invariant_p (SET_SRC (set)))
if (!set || !function_invariant_p (SET_SRC (set))
|| !function_invariant_p (XEXP (note, 0)))
remove_note (insn, note);
} while (insn != end && (insn = NEXT_INSN (insn)));
@ -4118,7 +4119,12 @@ if_convert (void)
#ifdef IFCVT_MULTIPLE_DUMPS
if (dump_file && cond_exec_changed_p)
print_rtl_with_bb (dump_file, get_insns ());
{
if (dump_flags & TDF_SLIM)
print_rtl_slim_with_bb (dump_file, get_insns (), dump_flags);
else
print_rtl_with_bb (dump_file, get_insns ());
}
#endif
}
while (cond_exec_changed_p);