rs6000-c: Add support for built-in functions vector unsigned long long vec_bperm...
authorCarl Love <cel@us.ibm.com>
Tue, 16 May 2017 19:32:54 +0000 (19:32 +0000)
committerCarl Love <carll@gcc.gnu.org>
Tue, 16 May 2017 19:32:54 +0000 (19:32 +0000)
commit727577c2300f8a1c4cf757e784267e11034f6b4a
tree51ea7c324bd6bf2e6ccac03b4d9f17336c30f289
parent6b6ae9eb9c06b6911573bb9a13cf98b5a7c98b78
rs6000-c: Add support for built-in functions vector unsigned long long vec_bperm (vector...

gcc/ChangeLog:

2017-05-16  Carl Love  <cel@us.ibm.com>

* config/rs6000/rs6000-c: Add support for built-in functions
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)
vector signed char vec_sldw (vector signed char,
                             vector signed char,
                             const int)
vector unsigned char vec_sldw (vector unsigned char,
                               vector unsigned char,
                               const int)
vector signed short vec_sldw (vector signed short,
                              vector signed short,
                              const int)
vector unsigned short vec_sldw (vector unsigned short,
                                vector unsigned short,
                                const int)
vector signed int vec_sldw (vector signed int,
                            vector signed int,
                            const int)
vector unsigned int vec_sldw (vector unsigned int,
                              vector unsigned int,
                              const int)
vector signed long long vec_sldw (vector signed long long,
                                  vector signed long long,
                                  const int)
vector unsigned long long vec_sldw (vector unsigned long long,
                                    vector unsigned long long,
                                    const int)
* config/rs6000/rs6000-c: Add support for built-in functions
* config/rs6000/rs6000-builtin.def: Add definition for SLDW.
* config/rs6000/altivec.h: Add defintion for vec_sldw.
* doc/extend.texi: Update the built-in documentation for the
new built-in functions.

gcc/testsuite/ChangeLog:

2017-05-16  Carl Love  <cel@us.ibm.com>

* gcc.target/powerpc/builtins-3.c: New vec_mule, vec_mulo test cases.
* gcc.target/powerpc/builtins-3-p8.c: Add tests for the new Power 8
built-ins to the test suite file.  Note, support for mradds exists
but no test case exists.
* gcc.target/powerpc/builtins-3-p9.c: Add tests for the new Power 9
built-ins to the test suite file.

From-SVN: r248125
gcc/ChangeLog
gcc/config/rs6000/altivec.h
gcc/config/rs6000/rs6000-builtin.def
gcc/config/rs6000/rs6000-c.c
gcc/doc/extend.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/powerpc/builtins-3-p8.c
gcc/testsuite/gcc.target/powerpc/builtins-3-p9.c
gcc/testsuite/gcc.target/powerpc/builtins-3.c