rs6000: Add MMA __builtin_vsx_lxvp and __builtin_vsx_stxvp built-ins
commit42a9e4e1381ba14d8ef21b331494945c2f51e6be
authorPeter Bergner <bergner@linux.ibm.com>
Fri, 2 Jul 2021 16:27:52 +0000 (2 11:27 -0500)
committerPeter Bergner <bergner@linux.ibm.com>
Fri, 2 Jul 2021 16:28:45 +0000 (2 11:28 -0500)
tree91b6be794139b81e33d695b4af005ae6dcf0b66f
parent7aa5fb17a30ff0ce9928e5eac35b892d95e7eba5
rs6000: Add MMA __builtin_vsx_lxvp and __builtin_vsx_stxvp built-ins

Add support for the __builtin_vsx_lxvp and __builtin_vsx_stxvp built-ins
to keep in sync with LLVM which added these earlier.

2021-07-02  Peter Bergner  <bergner@linux.ibm.com>

gcc/
* config/rs6000/rs6000-builtin.def (BU_MMA_PAIR_LD, BU_MMA_PAIR_ST):
New macros.
(__builtin_vsx_lxvp, __builtin_vsx_stxvp): New built-ins.
* config/rs6000/rs6000-call.c (rs6000_gimple_fold_mma_builtin): Expand
lxvp and stxvp built-ins.
(mma_init_builtins): Handle lxvp and stxvp built-ins.
(builtin_function_type): Likewise.
* doc/extend.texi (__builtin_vsx_lxvp, __builtin_mma_stxvp): Document.

gcc/testsuite/
* gcc.target/powerpc/mma-builtin-7.c: New test.
* gcc.target/powerpc/mma-builtin-8.c: New test.
gcc/config/rs6000/rs6000-builtin.def
gcc/config/rs6000/rs6000-call.c
gcc/doc/extend.texi
gcc/testsuite/gcc.target/powerpc/mma-builtin-7.c [new file with mode: 0644]
gcc/testsuite/gcc.target/powerpc/mma-builtin-8.c [new file with mode: 0644]