-
- Downloads
AVX512FP16: Add vfmaddsub[132,213,231]ph/vfmsubadd[132,213,231]ph.
gcc/ChangeLog: * config/i386/avx512fp16intrin.h (_mm512_fmaddsub_ph): New intrinsic. (_mm512_mask_fmaddsub_ph): Likewise. (_mm512_mask3_fmaddsub_ph): Likewise. (_mm512_maskz_fmaddsub_ph): Likewise. (_mm512_fmaddsub_round_ph): Likewise. (_mm512_mask_fmaddsub_round_ph): Likewise. (_mm512_mask3_fmaddsub_round_ph): Likewise. (_mm512_maskz_fmaddsub_round_ph): Likewise. (_mm512_mask_fmsubadd_ph): Likewise. (_mm512_mask3_fmsubadd_ph): Likewise. (_mm512_maskz_fmsubadd_ph): Likewise. (_mm512_fmsubadd_round_ph): Likewise. (_mm512_mask_fmsubadd_round_ph): Likewise. (_mm512_mask3_fmsubadd_round_ph): Likewise. (_mm512_maskz_fmsubadd_round_ph): Likewise. * config/i386/avx512fp16vlintrin.h (_mm256_fmaddsub_ph): New intrinsic. (_mm256_mask_fmaddsub_ph): Likewise. (_mm256_mask3_fmaddsub_ph): Likewise. (_mm256_maskz_fmaddsub_ph): Likewise. (_mm_fmaddsub_ph): Likewise. (_mm_mask_fmaddsub_ph): Likewise. (_mm_mask3_fmaddsub_ph): Likewise. (_mm_maskz_fmaddsub_ph): Likewise. (_mm256_fmsubadd_ph): Likewise. (_mm256_mask_fmsubadd_ph): Likewise. (_mm256_mask3_fmsubadd_ph): Likewise. (_mm256_maskz_fmsubadd_ph): Likewise. (_mm_fmsubadd_ph): Likewise. (_mm_mask_fmsubadd_ph): Likewise. (_mm_mask3_fmsubadd_ph): Likewise. (_mm_maskz_fmsubadd_ph): Likewise. * config/i386/i386-builtin.def: Add corresponding new builtins. * config/i386/sse.md (VFH_SF_AVX512VL): New mode iterator. * (<avx512>_fmsubadd_<mode>_maskz<round_expand_name>): New expander. * (<avx512>_fmaddsub_<mode>_maskz<round_expand_name>): Use VFH_SF_AVX512VL. * (<sd_mask_codefor>fma_fmaddsub_<mode><sd_maskz_name><round_name>): Ditto. * (<avx512>_fmaddsub_<mode>_mask<round_name>): Ditto. * (<avx512>_fmaddsub_<mode>_mask3<round_name>): Ditto. * (<sd_mask_codefor>fma_fmsubadd_<mode><sd_maskz_name><round_name>): Ditto. * (<avx512>_fmsubadd_<mode>_mask<round_name>): Ditto. * (<avx512>_fmsubadd_<mode>_mask3<round_name>): Ditto. gcc/testsuite/ChangeLog: * gcc.target/i386/avx-1.c: Add test for new builtins. * gcc.target/i386/sse-13.c: Ditto. * gcc.target/i386/sse-23.c: Ditto. * gcc.target/i386/sse-14.c: Add test for new intrinsics. * gcc.target/i386/sse-22.c: Ditto.
Showing
- gcc/config/i386/avx512fp16intrin.h 228 additions, 0 deletionsgcc/config/i386/avx512fp16intrin.h
- gcc/config/i386/avx512fp16vlintrin.h 182 additions, 0 deletionsgcc/config/i386/avx512fp16vlintrin.h
- gcc/config/i386/i386-builtin.def 18 additions, 0 deletionsgcc/config/i386/i386-builtin.def
- gcc/config/i386/sse.md 62 additions, 41 deletionsgcc/config/i386/sse.md
- gcc/testsuite/gcc.target/i386/avx-1.c 6 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx-1.c
- gcc/testsuite/gcc.target/i386/sse-13.c 6 additions, 0 deletionsgcc/testsuite/gcc.target/i386/sse-13.c
- gcc/testsuite/gcc.target/i386/sse-14.c 8 additions, 0 deletionsgcc/testsuite/gcc.target/i386/sse-14.c
- gcc/testsuite/gcc.target/i386/sse-22.c 8 additions, 0 deletionsgcc/testsuite/gcc.target/i386/sse-22.c
- gcc/testsuite/gcc.target/i386/sse-23.c 6 additions, 0 deletionsgcc/testsuite/gcc.target/i386/sse-23.c
Loading
Please register or sign in to comment