On Wed, Apr 26, 2017 at 3:23 PM, Richard Biener
<richard.guent...@gmail.com> wrote:
> On Wed, Apr 26, 2017 at 3:37 PM, Bin.Cheng <amker.ch...@gmail.com> wrote:
>> On Wed, Apr 26, 2017 at 2:32 PM, Richard Biener
>> <richard.guent...@gmail.com> wrote:
>>> On Tue, Apr 18, 2017 at 12:52 PM, Bin Cheng <bin.ch...@arm.com> wrote:
>>>> Hi,
>>>> Given only integer variables are meaningful for register pressure 
>>>> estimation in IVOPTs,
>>>> this patch skips non-integer type PHIs when counting register pressure.
>>>> Is it OK?
>>>
>>> Huh.  I suppose it only makes a difference because you are ignoring
>>> POINTER_TYPE_P
>>> IVs?  At least I would be surprised if get_iv returns true for float
>>> or vector PHIs (yeah, see
>>> early out in get_iv)?  So why exclude POINTER_TYPE_P IVs?
>> Hmm, but if get_iv returns non-NULL, the phi won't be counted because
>> loop is continued?  Actually, all IV and invariants are skipped by
>> checking get_iv, so this is only to skip floating point phis.
>
> Err, but AFAICS get_iv will return non-NULL for POINTER_TYPE_P IVs
> which you then skip by your added
>
> +      if (!INTEGRAL_TYPE_P (TREE_TYPE (op)))
> +       continue;
>
> thus float IVs are always skipped by means if get_iv returning NULL.
>
> Oh, the get_iv check continues for non-NULL result ... so it makes sense.
> But still, why exclude POINTER_TYPE_P non-IV ops?
POINTER_TYPE_P is simply an overlook,  will update patch.

Thanks,
bin
>
> Richard.
>
>> Thanks,
>> bin
>>>
>>> Richard.
>>>
>>>> Thanks,
>>>> bin
>>>>
>>>> 2017-04-11  Bin Cheng  <bin.ch...@arm.com>
>>>>
>>>>         * tree-ssa-loop-ivopts.c (determine_set_costs): Skip non-interger
>>>>         when counting register pressure.
>>>>

Reply via email to