Hello, The attached patch contains minor fixes.
Currently testing and bootstrap on ppc64-redhat-linux enabling SMS on loops with SC 1. OK for mainline once testing completes? Thanks, Revital Changelog * modulo-sched.c (optimize_sc): Call remove_node_from_ps outside of gcc_assert. (sms_schedule): Add print info.
Index: modulo-sched.c =================================================================== --- modulo-sched.c (revision 178632) +++ modulo-sched.c (working copy) @@ -773,7 +773,7 @@ optimize_sc (partial_schedule_ptr ps, dd if (get_sched_window (ps, g->closing_branch, sched_nodes, ii, &start, &step, &end) == 0) { - bool success; + bool success, remove_branch_p; ps_insn_ptr next_ps_i; int branch_cycle = SCHED_TIME (g->closing_branch); int row = SMODULO (branch_cycle, ps->ii); @@ -835,7 +835,8 @@ optimize_sc (partial_schedule_ptr ps, dd break; gcc_assert (next_ps_i); - gcc_assert (remove_node_from_ps (ps, next_ps_i)); + remove_branch_p = remove_node_from_ps (ps, next_ps_i); + gcc_assert (remove_branch_p); success = try_scheduling_node_in_cycle (ps, g->closing_branch, g->closing_branch->cuid, c, @@ -1485,8 +1486,8 @@ sms_schedule (void) if (dump_file) { fprintf (dump_file, - "SMS succeeded %d %d (with ii, sc)\n", ps->ii, - stage_count); + "%s:%d SMS succeeded %d %d (with ii, sc)\n", + insn_file (tail), insn_line (tail), ps->ii, stage_count); print_partial_schedule (ps, dump_file); }