From: Uros Bizjak Date: Thu, 7 Jan 2010 17:31:43 +0000 (+0100) Subject: re PR rtl-optimization/42511 (bootstrap error in stage3 on alpha-linux-gnu) X-Git-Tag: releases/gcc-4.3.5~230 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=06ebe7b0d29222f9a512d248b25f938428cfa9a9;p=thirdparty%2Fgcc.git 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: r155698 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8f744def8910..c6a3ffcad0a0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2010-01-07 Uros Bizjak + + * 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 PR target/42564 diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c index 3085fa4d3ee2..f944fc97794b 100644 --- a/gcc/ifcvt.c +++ b/gcc/ifcvt.c @@ -4014,7 +4014,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))); @@ -4092,7 +4093,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);