On 2/19/19 8:11 AM, Segher Boessenkool wrote:
> Hi!
>
> On Tue, Feb 19, 2019 at 03:38:56AM -0600, Li Jia He wrote:
>> GCC revision 259524 implemented range check for the vec_splat_{su}{8,16,32}
>> builtins.  However, as a consequence of the implementation, the range check
>> is not done correctly for the expected vspltis[bhw] instructions.  The result
>> is that we may not get a valid error message if the valid range of the data
>> is exceeded.
>>      PR target/88100
>>      * gcc/config/rs6000/rs6000.c (rs6000_gimple_fold_builtin): Remove
>>      sext_hwi in IN_RANGE (sext_hwi (TREE_INT_CST_LOW (arg0), size),
>>      -16, 15).
> Please avoid more than a word or two of C in changelogs.  Also, in such
> cases you should show the case labels:
>
>       PR target/88100
>       * gcc/config/rs6000/rs6000.c (rs6000_gimple_fold_builtin)
>       <case ALTIVEC_BUILTIN_VSPLTISB, ALTIVEC_BUILTIN_VSPLTISH,
>       ALTIVEC_BUILTIN_VSPLTISW>: Don't convert the operand before range
>       checking it.
>
> Okay for trunk with that.  Thanks!

I believe you will also want to get permission to backport this to GCC 8.
It looks like the problem was introduced there, correct?

Thanks,
Bill

>
>
> Segher
>

Reply via email to