aboutsummaryrefslogtreecommitdiff
path: root/libcpp
diff options
context:
space:
mode:
authorAndreas Krebbel <krebbel@linux.ibm.com>2021-03-02 11:43:31 +0100
committerAndreas Krebbel <krebbel@linux.ibm.com>2021-03-02 11:58:31 +0100
commit2bd58910b04ea785adda683cf0d494ebe11be477 (patch)
treea2911f60fa6f991fa9a8c7f8e75d951431e50a33 /libcpp
parent796a35b2bd663b1086a6d7b4fed03ba8e1a6545c (diff)
downloadgcc-2bd58910b04ea785adda683cf0d494ebe11be477.zip
gcc-2bd58910b04ea785adda683cf0d494ebe11be477.tar.gz
gcc-2bd58910b04ea785adda683cf0d494ebe11be477.tar.bz2
IBM Z: arch14: New instrinsics
This adds support for 5 new builtins. gcc/ChangeLog: * config/s390/s390-builtin-types.def (BT_FN_V4SF_V8HI_UINT): New builtin signature. (BT_FN_V8HI_V8HI_UINT): Likewise. (BT_FN_V8HI_V4SF_V4SF_UINT): Likewise. * config/s390/s390-builtins.def (B_NNPA): New macro definition. (s390_vclfnhs, s390_vclfnls, s390_vcrnfs, s390_vcfn, s390_vcnf): New builtin definitions. * config/s390/s390-c.c (s390_cpu_cpp_builtins_internal): Bump vector extension version. * config/s390/s390.c (s390_expand_builtin): Check if builtins are available with current -march level. * config/s390/s390.md (UNSPEC_NNPA_VCLFNHS_V8HI) (UNSPEC_NNPA_VCLFNLS_V8HI, UNSPEC_NNPA_VCRNFS_V8HI) (UNSPEC_NNPA_VCFN_V8HI, UNSPEC_NNPA_VCNF_V8HI): New constants. * config/s390/vecintrin.h (vec_extend_to_fp32_hi): New macro. (vec_extend_to_fp32_lo): Likewise. (vec_round_from_fp32): Likewise. (vec_convert_to_fp16): Likewise. (vec_convert_from_fp16): Likewise. * config/s390/vx-builtins.md (vclfnhs_v8hi): New insn pattern. (vclfnls_v8hi): Likewise. (vcrnfs_v8hi): Likewise. (vcfn_v8hi): Likewise. (vcnf_v8hi): Likewise. gcc/testsuite/ChangeLog: * gcc.target/s390/zvector/vec-nnpa-fp16-convert.c: New test. * gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c: New test. * gcc.target/s390/zvector/vec_convert_from_fp16.c: New test. * gcc.target/s390/zvector/vec_convert_to_fp16.c: New test. * gcc.target/s390/zvector/vec_extend_to_fp32_hi.c: New test. * gcc.target/s390/zvector/vec_extend_to_fp32_lo.c: New test. * gcc.target/s390/zvector/vec_round_from_fp32.c: New test.
Diffstat (limited to 'libcpp')
0 files changed, 0 insertions, 0 deletions