On Thu, Oct 27, 2011 at 4:47 PM, Revital Eres <revital.e...@linaro.org> wrote:
> Hello,
>
> The attach patch fixes the current marking of SMS loops to prevent
> further scheduling as follows: it marks *all* the loop's bbs with
> BB_DISABLE_SCHEDULE which prevents them from been scheduled later.
> (with the current implementation if the loop has non empty latch then
> it will be considered for scheduling based on
> sched_is_disabled_for_current_region_p () in in sched-rgn.c).
> It also marks the epilogue and prologue as BB_DISABLE_SCHEDULE which
> was shown in my experiments as a good influence on performance as
> scheduling those regions after SMS increased register pressure in some
> cases.
>
> Tested and bootstrap on all languages except java (PR50879) on
> ppc64-redhat-linux, enabling SMS on loops with SC 1.
>
> OK for mainline?
>

OK, seems reasonable.

Please fix typo (in original comment):
-            scheduling passes doesn't touch it.  */
+            scheduling passes don't touch it.  */

Thanks,
Ayal.


> Thanks,
> Revital
>
>
> Changelog:
>
>        * modulo-sched.c (generate_prolog_epilog): Mark prolog and epilog
>        as BB_DISABLE_SCHEDULE.
>        (mark_loop_unsched): New function.
>        (sms_schedule): Call it.
>

Reply via email to