rs6000-c.c (P9V_BUILTIN_VEC_XL_LEN_R, [...]): Add support for builtins vector unsigne...
authorCarl Love <cel@us.ibm.com>
Tue, 26 Sep 2017 21:50:46 +0000 (21:50 +0000)
committerCarl Love <carll@gcc.gnu.org>
Tue, 26 Sep 2017 21:50:46 +0000 (21:50 +0000)
commit1262c6cf3a0ca41bcb02959ab0842677e5517d28
tree13f6154da49a21f6d9300d1b73befe9b66d157c1
parentb460e64da56ecff8f1d178c1eade56397d3d71cf
rs6000-c.c (P9V_BUILTIN_VEC_XL_LEN_R, [...]): Add support for builtins vector unsigned char vec_xl_len_r (unsigned char *...

gcc/ChangeLog:

2017-09-26  Carl Love  <cel@us.ibm.com>

* config/rs6000/rs6000-c.c (P9V_BUILTIN_VEC_XL_LEN_R,
P9V_BUILTIN_VEC_XST_LEN_R): Add support for builtins
vector unsigned char vec_xl_len_r (unsigned char *, size_t);
void vec_xst_len_r (vector unsigned char, unsigned char *, size_t);
* config/rs6000/altivec.h (vec_xl_len_r, vec_xst_len_r): Add defines.
* config/rs6000/rs6000-builtin.def (XL_LEN_R, XST_LEN_R): Add
definitions and overloading.
* config/rs6000/rs6000.c (altivec_expand_builtin): Add case
statement for P9V_BUILTIN_XST_LEN_R.
(altivec_init_builtins): Add def_builtin for P9V_BUILTIN_STXVLL.
* config/rs6000/vsx.md (lxvll, stxvll, xl_len_r, xst_len_r): Add
define_expand and define_insn for the instructions and builtins.
* doc/extend.texi: Update the built-in documentation file for the new
built-in functions.
* config/rs6000/altivec.md (altivec_lvsl_reg, altivec_lvsr_reg): Add
define_insn for the instructions

gcc/testsuite/ChangeLog:

2017-09-26  Carl Love  <cel@us.ibm.com>

* gcc.target/powerpc/builtins-5-p9-runnable.c: Add new runable test
file for the new built-ins and the existing built-ins.

From-SVN: r253217
gcc/ChangeLog
gcc/config/rs6000/altivec.h
gcc/config/rs6000/altivec.md
gcc/config/rs6000/rs6000-builtin.def
gcc/config/rs6000/rs6000-c.c
gcc/config/rs6000/rs6000.c
gcc/config/rs6000/vsx.md
gcc/doc/extend.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/powerpc/builtins-5-p9-runnable.c [new file with mode: 0644]