[Patch, i386] Limit unroll factor for certain loops on Corei7

Teresa Johnson tejohnson@google.com
Fri Dec 2 15:47:00 GMT 2011


Thanks, Andreas. You are right in that fully peeling a loop is done by
a different code path (peel_loops_completely() and earlier in the tree
unroller).

Teresa

On Fri, Dec 2, 2011 at 12:54 AM, Andreas Krebbel
<krebbel@linux.vnet.ibm.com> wrote:
> On Thu, Dec 01, 2011 at 11:39:36PM -0800, Teresa Johnson wrote:
>> To do this I leveraged the existing TARGET_LOOP_UNROLL_ADJUST target
>> hook, which was previously only defined for s390. I added one
>> additional call to this target hook, when unrolling for constant trip
>> count loops. Previously it was only called for runtime computed trip
>> counts. Andreas, can you comment on the effect for s390 of this
>> additional call of the target hook, since I can't measure that?
>
> Limiting the unrolling of loops with constant iterations makes also
> sense for s390.  However, the limitations are only relevant if it
> actually stays a loop. If the loop gets completely peeled into a
> sequential instruction stream there should be no limitation. But as I
> understand it this will be done by different code paths.
>
> So I think the change should be ok for s390 as well. It will take some
> time to get measurements on that. I'll try to keep that in mind until
> then.
>
> Bye,
>
> -Andreas-
>



-- 
Teresa Johnson | Software Engineer | tejohnson@google.com | 408-460-2413



More information about the Gcc-patches mailing list