aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp
diff options
context:
space:
mode:
authorCarl Love <cel@us.ibm.com>2020-05-26 22:44:50 -0500
committerGiuliano Belinassi <giuliano.belinassi@usp.br>2020-08-17 15:07:37 -0300
commit141d4449e02bb91fa22ae237ee0b8f29c89587a3 (patch)
treea342941fde01e4fbb0a1afe15391517ad44e9172 /gcc/cp
parent471c1d2e2172ad753241bf65326794cdc09ae76d (diff)
downloadgcc-141d4449e02bb91fa22ae237ee0b8f29c89587a3.zip
gcc-141d4449e02bb91fa22ae237ee0b8f29c89587a3.tar.gz
gcc-141d4449e02bb91fa22ae237ee0b8f29c89587a3.tar.bz2
rs6000, Add vector shift double builtin support
GCC maintainers: The following patch adds support for the vector shift double builtins. The patch has been compiled and tested on powerpc64le-unknown-linux-gnu (Power 8 LE) powerpc64le-unknown-linux-gnu (Power 9 LE) and Mambo with no regression errors. Please let me know if this patch is acceptable for the mainline branch. Thanks. Carl Love ------------------------------------------------------- gcc/ChangeLog 2020-08-04 Carl Love <cel@us.ibm.com> * config/rs6000/altivec.h (vec_sldb, vec_srdb): New defines. * config/rs6000/altivec.md (UNSPEC_SLDB, UNSPEC_SRDB): New. (SLDB_lr): New attribute. (VSHIFT_DBL_LR): New iterator. (vs<SLDB_lr>db_<mode>): New define_insn. * config/rs6000/rs6000-builtin.def (VSLDB_V16QI, VSLDB_V8HI, VSLDB_V4SI, VSLDB_V2DI, VSRDB_V16QI, VSRDB_V8HI, VSRDB_V4SI, VSRDB_V2DI): New BU_P10V_3 definitions. (SLDB, SRDB): New BU_P10_OVERLOAD_3 definitions. * config/rs6000/rs6000-call.c (P10_BUILTIN_VEC_SLDB, P10_BUILTIN_VEC_SRDB): New definitions. (rs6000_expand_ternop_builtin) [CODE_FOR_vsldb_v16qi, CODE_FOR_vsldb_v8hi, CODE_FOR_vsldb_v4si, CODE_FOR_vsldb_v2di, CODE_FOR_vsrdb_v16qi, CODE_FOR_vsrdb_v8hi, CODE_FOR_vsrdb_v4si, CODE_FOR_vsrdb_v2di]: Add clauses. * doc/extend.texi: Add description for vec_sldb and vec_srdb. gcc/testsuite/ChangeLog 2020-08-04 Carl Love <cel@us.ibm.com> * gcc.target/powerpc/vec-shift-double-runnable.c: New test file.
Diffstat (limited to 'gcc/cp')
0 files changed, 0 insertions, 0 deletions