Peeling of once rolling loops limited?
Richard Guenther
rguenth@tat.physik.uni-tuebingen.de
Wed Feb 25 18:09:00 GMT 2004
Hi!
Why is peeling of once rolling loops limited? And why it is limited by
a parameter that is not even documented? Shouldn't peeling a once
rolling loop not always be an improvement?
unroll-loops.c:267
/* Decide whether the LOOP is once rolling and suitable for complete
peeling. */
static void
decide_peel_once_rolling (struct loop *loop, int flags ATTRIBUTE_UNUSED)
{
if (rtl_dump_file)
fprintf (rtl_dump_file, ";; Considering peeling once rolling loop\n");
/* Is the loop small enough? */
if ((unsigned) PARAM_VALUE (PARAM_MAX_ONCE_PEELED_INSNS) < loop->ninsns)
{
if (rtl_dump_file)
fprintf (rtl_dump_file, ";; Not considering loop, is too big\n");
return;
}
the above test should probably be removed together with all traces of
the PARAM_MAX_ONCE_PEELED_INSNS param.
Thanks,
Richard.
More information about the Gcc
mailing list