]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/config/i386/avx512bf16intrin.h
i386:: using __bf16 for AVX512BF16 intrinsics
authorkonglin1 <lingling.kong@intel.com>
Mon, 31 Oct 2022 06:04:08 +0000 (14:04 +0800)
committerkonglin1 <lingling.kong@intel.com>
Mon, 31 Oct 2022 06:04:12 +0000 (14:04 +0800)
commit87235f1e5c740de9c6f72a5dd7d7eb9cb7df2e1d
tree04704741c19b5506500c901c12f632e64107c37b
parent6913cad2a38bc406b137b06d579b650f6fe9a2e6
i386:: using __bf16 for AVX512BF16 intrinsics

gcc/ChangeLog:

* config/i386/avx512bf16intrin.h (__attribute__): Change short to bf16.
(_mm_cvtsbh_ss): Ditto.
(_mm512_cvtne2ps_pbh): Ditto.
(_mm512_mask_cvtne2ps_pbh): Ditto.
(_mm512_maskz_cvtne2ps_pbh): Ditto.
* config/i386/avx512bf16vlintrin.h (__attribute__): Ditto.
(_mm256_cvtne2ps_pbh): Ditto.
(_mm256_mask_cvtne2ps_pbh): Ditto.
(_mm256_maskz_cvtne2ps_pbh): Ditto.
(_mm_cvtne2ps_pbh): Ditto.
(_mm_mask_cvtne2ps_pbh): Ditto.
(_mm_maskz_cvtne2ps_pbh): Ditto.
(_mm_cvtness_sbh): Ditto.
* config/i386/i386-builtin-types.def (V8BF): Add new
DEF_VECTOR_TYPE for BFmode.
(V16BF): Ditto.
(V32BF): Ditto.
* config/i386/i386-builtin.def (BDESC): Fixed builtins.
* config/i386/i386-expand.cc (ix86_expand_args_builtin): Changed
avx512bf16 ix86_builtin_func_type included HI to BF.
* config/i386/immintrin.h: Add SSE2 depend for avx512bf16.
* config/i386/sse.md (TARGET_AVX512VL): Changed HI vector to BF
vector.
(avx512f_cvtneps2bf16_v4sf): New define_expand.
(*avx512f_cvtneps2bf16_v4sf): New define_insn.
(avx512f_cvtneps2bf16_v4sf_maskz):Ditto.
(avx512f_cvtneps2bf16_v4sf_mask): Ditto.
(avx512f_cvtneps2bf16_v4sf_mask_1): Ditto.

gcc/testsuite/ChangeLog:

* gcc.target/i386/avx512bf16-cvtsbh2ss-1.c: Add fpmath option.
* gcc.target/i386/avx512bf16-vdpbf16ps-2.c: Fixed
scan-assembler.
* gcc.target/i386/avx512bf16vl-cvtness2sbh-1.c: Add x/y suffix
for vcvtneps2bf16.
* gcc.target/i386/avx512bf16vl-vcvtneps2bf16-1.c: Ditto.
gcc/config/i386/avx512bf16intrin.h
gcc/config/i386/avx512bf16vlintrin.h
gcc/config/i386/i386-builtin-types.def
gcc/config/i386/i386-builtin.def
gcc/config/i386/i386-expand.cc
gcc/config/i386/immintrin.h
gcc/config/i386/sse.md
gcc/testsuite/gcc.target/i386/avx512bf16-cvtsbh2ss-1.c
gcc/testsuite/gcc.target/i386/avx512bf16-vdpbf16ps-2.c
gcc/testsuite/gcc.target/i386/avx512bf16vl-cvtness2sbh-1.c
gcc/testsuite/gcc.target/i386/avx512bf16vl-vcvtneps2bf16-1.c