From: Bernd Schmidt Date: Thu, 9 Jun 2011 13:55:41 +0000 (+0000) Subject: re PR target/48673 (GCC generates WAW and RAW conflicts on IA64.) X-Git-Tag: releases/gcc-4.7.0~6125 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=547fdef870a84b90382a9de0bf4aa9e85ba1003a;p=thirdparty%2Fgcc.git re PR target/48673 (GCC generates WAW and RAW conflicts on IA64.) PR target/48673 * config/ia64/ia64.c (ia64_reorg): Clear BB_DISABLE_SCHEDULE flag in all basic blocks. From-SVN: r174844 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b2251e94e630..cbc85ee7a8e0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2011-06-09 Bernd Schmidt + + PR target/48673 + * config/ia64/ia64.c (ia64_reorg): Clear BB_DISABLE_SCHEDULE flag + in all basic blocks. + 2011-06-09 Rainer Orth * config/alpha/netbsd.h (ENABLE_EXECUTE_STACK): Remove. diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index d6eeb3d70699..b8ffc14debdc 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -9394,9 +9394,15 @@ ia64_reorg (void) if (optimize && flag_schedule_insns_after_reload && dbg_cnt (ia64_sched2)) { + basic_block bb; timevar_push (TV_SCHED2); ia64_final_schedule = 1; + /* We can't let modulo-sched prevent us from scheduling any bbs, + since we need the final schedule to produce bundle information. */ + FOR_EACH_BB (bb) + bb->flags &= ~BB_DISABLE_SCHEDULE; + initiate_bundle_states (); ia64_nop = make_insn_raw (gen_nop ()); PREV_INSN (ia64_nop) = NEXT_INSN (ia64_nop) = NULL_RTX;