On Tue, Jun 06, 2017 at 03:55:28PM -0700, Carl E. Love wrote: > The support for the vec_mulo and vec_mule that was recently submitted > has a couple of bugs. Specifically, they were implemented with > int/unsigned int args and return int/unsigned int. The return types > should have been long long/unsigned long long. Additionally it was > noted that unsigned version returned a signed version by mistake. > > The following patch fixes these issues. The patch has been tested on > powerpc64le-unknown-linux-gnu (Power 8 LE) and on > powerpc64-unknown-linux-gnu (Power 8 BE) with no regressions. > > Is the patch OK for gcc mainline?
Looks good. Thanks! Segher > 2017-06-08 Carl Love <c...@us.ibm.com> > > * config/rs6000/rs6000-c: The return type of the following > built-in functions was implemented as int not long long. Fix sign > of return value for the unsigned version of vec_mulo and vec_mule. > vector unsigned long long vec_bperm (vector unsigned long long, > vector unsigned char) > vector signed long long vec_mule (vector signed int, > vector signed int) > vector unsigned long long vec_mule (vector unsigned int, > vector unsigned int) > vector signed long long vec_mulo (vector signed int, > vector signed int) > vector unsigned long long vec_mulo (vector unsigned int, > vector unsigned int) > * doc/extend.texi: Fix the documentation for the > built-in functions. > > gcc/testsuite/ChangeLog: > > 2017-06-08 Carl Love <c...@us.ibm.com> > > * gcc.target/powerpc/builtins-3.c: Fix vec_mule, vec_mulo test cases.