aboutsummaryrefslogtreecommitdiff
path: root/contrib/gcc-changelog/git_commit.py
diff options
context:
space:
mode:
authorchenxiaolong <chenxiaolong@loongson.cn>2025-10-29 18:49:34 +0800
committerLulu Cheng <chenglulu@loongson.cn>2025-11-03 10:13:33 +0800
commitc2013267642fea4a6e89b826940c8aa80a76089d (patch)
tree266d327b53db7064289800f3c48fb7e0544f922a /contrib/gcc-changelog/git_commit.py
parentabb22d046d3ee0b6a6ae2922bdd354e65096d8ca (diff)
downloadgcc-c2013267642fea4a6e89b826940c8aa80a76089d.zip
gcc-c2013267642fea4a6e89b826940c8aa80a76089d.tar.gz
gcc-c2013267642fea4a6e89b826940c8aa80a76089d.tar.bz2
LoongArch: Add builtin interfaces for 128 and 256 vector conversions.
gcc/ChangeLog: * config/loongarch/lasx.md (vec_cast<mode>): New template implemention. (vec_insert_lo_<mode>): Dito. (vec_insert_hi_<mode>): Dito. * config/loongarch/lasxintrin.h (defined): Test for adding the builtin function. (__lasx_cast_128_s): Dito. (__lasx_cast_128_d): Dito. (__lasx_cast_128): Dito. (__lasx_concat_128_s): Dito. (__lasx_concat_128_d): Dito. (__lasx_concat_128): Dito. (__lasx_extract_128_lo_s): Dito. (__lasx_extract_128_hi_s): Dito. (__lasx_extract_128_lo_d): Dito. (__lasx_extract_128_hi_d): Dito. (__lasx_extract_128_lo): Dito. (__lasx_extract_128_hi): Dito. (__lasx_insert_128_lo_s): Dito. (__lasx_insert_128_hi_s): Dito. (__lasx_insert_128_lo_d): Dito. (__lasx_insert_128_hi_d): Dito. (__lasx_insert_128_lo): Dito. (__lasx_insert_128_hi): Dito. * config/loongarch/loongarch-builtins.cc (CODE_FOR_lasx_extract_128_lo_s): Add builtins and register icode. (CODE_FOR_lasx_extract_128_hi_s): Dito. (CODE_FOR_lasx_extract_128_lo_d): Dito. (CODE_FOR_lasx_extract_128_hi_d): Dito. (CODE_FOR_lasx_extract_128_lo): Dito. (CODE_FOR_lasx_extract_128_hi): Dito. (CODE_FOR_lasx_insert_128_lo_s): Dito. (CODE_FOR_lasx_insert_128_hi_s): Dito. (CODE_FOR_lasx_insert_128_lo_d): Dito. (CODE_FOR_lasx_insert_128_hi_d): Dito. (CODE_FOR_lasx_insert_128_lo): Dito. (CODE_FOR_lasx_insert_128_hi): Dito. (CODE_FOR_lasx_concat_128_s): Dito. (CODE_FOR_lasx_concat_128_d): Dito. (CODE_FOR_lasx_concat_128): Dito. (CODE_FOR_lasx_cast_128_s): Dito. (CODE_FOR_lasx_cast_128_d): Dito. (CODE_FOR_lasx_cast_128): Dito. (loongarch_expand_builtin_direct): For the newly added insertion or extraction, construct the parallel parameter corresponding to the operand. * config/loongarch/loongarch-c.cc (loongarch_update_cpp_builtins): Define __loongarch_asx_sx_conv. * config/loongarch/loongarch-ftypes.def: Declare the type of the builtin function. * doc/extend.texi: Add document description. gcc/testsuite/ChangeLog: * gcc.target/loongarch/vector/lasx/vect-concat-128-256-result.c: New test. * gcc.target/loongarch/vector/lasx/vect-concat-128-256.c: New test. * gcc.target/loongarch/vector/lasx/vect-extract-256-128-result.c: New test. * gcc.target/loongarch/vector/lasx/vect-extract-256-128.c: New test. * gcc.target/loongarch/vector/lasx/vect-insert-128-256-result.c: New test. * gcc.target/loongarch/vector/lasx/vect-insert-128-256.c: New test.
Diffstat (limited to 'contrib/gcc-changelog/git_commit.py')
0 files changed, 0 insertions, 0 deletions