This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Use combined_fn in tree-vrp.c


On Tue, Nov 10, 2015 at 1:09 AM, Bernd Schmidt <bschmidt@redhat.com> wrote:
> On 11/07/2015 01:46 PM, Richard Sandiford wrote:
>>
>> @@ -3814,8 +3817,8 @@ extract_range_basic (value_range *vr, gimple *stmt)
>>           break;
>>           /* Both __builtin_ffs* and __builtin_popcount return
>>              [0, prec].  */
>> -       CASE_INT_FN (BUILT_IN_FFS):
>> -       CASE_INT_FN (BUILT_IN_POPCOUNT):
>> +       CASE_CFN_FFS:
>> +       CASE_CFN_POPCOUNT:
>>           arg = gimple_call_arg (stmt, 0);
>>           prec = TYPE_PRECISION (TREE_TYPE (arg));
>>           mini = 0;
>
>
> So let me see if I understood this. From what we discussed the purpose of
> these new internal functions is that they can have vector types. If so,
> isn't this code (here and elsewhere) which expects integers potentially
> going to be confused?

We indeed need to add additional checks to most users of CASE_CFN_* to cover
the bigger freedom that exists with respect to types.

Richard, please audit all the cases you change for that.

Thanks,
Richard.

>
>
> Bernd


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]