[RFC][PATCH 1/5] Add separate parms for rtl unroller

Kugan Vivekanandarajah kugan.vivekanandarajah@linaro.org
Mon Sep 18 01:36:00 GMT 2017


Hi Richard,

On 15 September 2017 at 19:31, Richard Biener
<richard.guenther@gmail.com> wrote:
> On Fri, Sep 15, 2017 at 3:27 AM, Kugan Vivekanandarajah
> <kugan.vivekanandarajah@linaro.org> wrote:
>> This patch adds separate params for rtl unroller so that they can be
>> tunned accordingly. Default values I have are based on some testing on
>> aarch64. I am happy to leave it as the current value and set them in
>> the back-end.
>
> PARAM_MAX_AVERAGE_UNROLLED_INSNS is only used by the RTL
> unroller.  Why should we separate PARAM_MAX_UNROLL_TIMES?
>
> PARAM_MAX_UNROLLED_INSNS is only used by gimple passes
> that perform unrolling.  Since GIMPLE is three-address it should
> match RTL reasonably well -- but I'd be ok in having a separate param
> for those.  But I wouldn't name those 'partial'.
>
> That said, those are magic numbers and I expect we can find some
> that work well on RTL and GIMPLE.

Thanks for the review. I am mostly interested in having separate
params for RTL runtime unrolling as this is different to what GIMPLE
unroller does. May be I should have separate params only for the
runtime unrolling (or the partial unroller)  and let RTL/GIMPLE share
the other. Any preference here ? Any preference on the name ?

I am suspecting that RTL unroller which does the same as GIMPLE is
kind of obsolete now?

Thanks,
Kugan





> Richard.
>
>>
>> Thanks,
>> Kugan
>>
>>
>> gcc/ChangeLog:
>>
>> 2017-09-12  Kugan Vivekanandarajah  <kuganv@linaro.org>
>>
>>     * loop-unroll.c (decide_unroll_constant_iterations): Use new params.
>>     (decide_unroll_runtime_iterations): Likewise.
>>     (decide_unroll_stupid): Likewise.
>>     * params.def (DEFPARAM): Separate and add new params for rtl unroller.



More information about the Gcc-patches mailing list