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 >