Richard Guenther <richard.guent...@gmail.com> writes: > On Tue, Aug 30, 2011 at 2:43 PM, Richard Sandiford > <richard.sandif...@linaro.org> wrote: >> Richard Guenther <richard.guent...@gmail.com> writes: >>> On Tue, Aug 30, 2011 at 2:29 PM, Richard Sandiford >>> <richard.sandif...@linaro.org> wrote: >>>> This is the move-scheduling patch itself. It should be fairly >>>> self-explanatory. Let me know if it isn't, and I'll try to improve >>>> the commentary. >>> >>> Can you add some testcases? >> >> I don't think it's an easy thing to test for. E.g. with the resampling >> loop in the covering message, there might well be a reasonable ii=27 >> schedule that doesn't need as many moves. > > So, does it only improve code generation or does it expose more > loops as SMS candidates? If the former, ok ...
Yeah, it just improves code generation. The code I'm adding only kicks in once we've found a "successful" SMS schedule. At the moment, once we've found that kind of schedule, we always emit it, regardless of how many moves it needs. The new code instead allows the schedule to be rejected. So from that point of view, it reduces the number of SMS candidates (but hopefully only in cases where we would otherwise generate worse code). Richard