diff options
author | carll <carll@138bc75d-0d04-0410-961f-82ee72b054a4> | 2017-06-29 15:39:57 +0000 |
---|---|---|
committer | carll <carll@138bc75d-0d04-0410-961f-82ee72b054a4> | 2017-06-29 15:39:57 +0000 |
commit | ee9f137292520469165dd7a62fe60c03d15b482d (patch) | |
tree | 82cba1c196681466f4224a133e283111b09c4090 /gcc/doc/extend.texi | |
parent | b56115acaa9e5911e4dc2cb6689839685e8e1d21 (diff) | |
download | gcc-ee9f137292520469165dd7a62fe60c03d15b482d.tar.gz |
gcc/ChangeLog:
2017-06-29 Carl Love <cel@us.ibm.com>
* config/rs6000/rs6000-c.c: Add support for built-in functions
vector signed int vec_signed (vector float);
vector signed long long vec_signed (vector double);
vector signed int vec_signed2 (vector double, vector double);
vector signed int vec_signede (vector double);
vector signed int vec_signedo (vector double);
* config/rs6000/rs6000.c (rs6000_generate_vsigned2_code): Add
instruction generator.
* config/rs6000/vsx.md (UNSPEC_VSX_XVCVSPSXWS, UNSPEC_VSX_XVCVSPSXDS,
UNSPEC_VSX_VSIGNED2): Add UNSPECS.
(vsx_xvcvspsxws, vsx_xvcvdpuxds_scale, vsx_xvcvspuxws, vsigned2_v2df):
Add define_insn.
(vsignedo_v2df, vsignede_v2df, vunsigned2_v2df, vunsignedo_v2df,
vunsignede_v2df): Add define_expands.
* config/rs6000/rs6000-builtin.def (VEC_SIGNED, VEC_UNSIGNED,
VEC_SIGNED2, VEC_UNSIGNED2, VEC_SIGNEDE, VEC_UNSIGNEDE, VEC_SIGNEDO,
VEC_UNSIGNEDO): Add definitions.
* config/vsx.md (UNSPEC_VSX_XVCVSPSXWS, UNSPEC_VSX_XVCVSPSXDS,
UNSPEC_VSX_VSIGNED2): Add UNSPECs.
(vsx_xvcvspsxws, vsx_xvcvspuxws): Add define_insn.
(vsigned2_v2df, vsigendo_v2df, vsignede_v2df,
vunsigned2_v2df, vunsignedo_v2df, vunsignede_v2df): Add define_expands.
* config/rs6000/altivec.h (vec_signed, vec_signed2,
vec_signede and vec_signedo, vec_unsigned, vec_unsigned2,
vec_unsignede, vec_unsignedo): Add builtin defines.
* config/rs6000-protos.h (rs6000_generate_vsigned2_code): Add extern
declaration.
* doc/extend.texi: Update the built-in documentation file for the
new built-in functions.
gcc/testsuite/ChangeLog:
2017-06-29 Carl Love <cel@us.ibm.com>
* gcc.target/powerpc/builtins-3-runnable.c (test_int_result,
test_unsigned_int_result, test_ll_int_result,
test_ll_unsigned_int_result): Add result checking functions, add
debug support.
(main): Add builtin function tests.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@249798 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/doc/extend.texi')
-rw-r--r-- | gcc/doc/extend.texi | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index 7f5191da920..84150ccf144 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -16658,6 +16658,13 @@ vector bool char vec_sel (vector bool char, vector bool char, vector unsigned char); +vector signed long long vec_signed (vector double); +vector signed int vec_signed (vector float); + +vector signed int vec_signede (vector double); +vector signed int vec_signedo (vector double); +vector signed int vec_signed2 (vector double, vector double); + vector signed char vec_sl (vector signed char, vector unsigned char); vector unsigned char vec_sl (vector unsigned char, @@ -17186,6 +17193,13 @@ vector signed int vec_sums (vector signed int, vector signed int); vector float vec_trunc (vector float); +vector signed long long vec_unsigned (vector double); +vector signed int vec_unsigned (vector float); + +vector signed int vec_unsignede (vector double); +vector signed int vec_unsignedo (vector double); +vector signed int vec_unsigned2 (vector double, vector double); + vector signed short vec_unpackh (vector signed char); vector bool short vec_unpackh (vector bool char); vector signed int vec_unpackh (vector signed short); |