-
- Downloads
AVX512FP16: Add vreduceph/vreducesh/vrndscaleph/vrndscalesh.
gcc/ChangeLog: * config/i386/avx512fp16intrin.h (_mm512_reduce_ph): New intrinsic. (_mm512_mask_reduce_ph): Likewise. (_mm512_maskz_reduce_ph): Likewise. (_mm512_reduce_round_ph): Likewise. (_mm512_mask_reduce_round_ph): Likewise. (_mm512_maskz_reduce_round_ph): Likewise. (_mm_reduce_sh): Likewise. (_mm_mask_reduce_sh): Likewise. (_mm_maskz_reduce_sh): Likewise. (_mm_reduce_round_sh): Likewise. (_mm_mask_reduce_round_sh): Likewise. (_mm_maskz_reduce_round_sh): Likewise. (_mm512_roundscale_ph): Likewise. (_mm512_mask_roundscale_ph): Likewise. (_mm512_maskz_roundscale_ph): Likewise. (_mm512_roundscale_round_ph): Likewise. (_mm512_mask_roundscale_round_ph): Likewise. (_mm512_maskz_roundscale_round_ph): Likewise. (_mm_roundscale_sh): Likewise. (_mm_mask_roundscale_sh): Likewise. (_mm_maskz_roundscale_sh): Likewise. (_mm_roundscale_round_sh): Likewise. (_mm_mask_roundscale_round_sh): Likewise. (_mm_maskz_roundscale_round_sh): Likewise. * config/i386/avx512fp16vlintrin.h: (_mm_reduce_ph): New intrinsic. (_mm_mask_reduce_ph): Likewise. (_mm_maskz_reduce_ph): Likewise. (_mm256_reduce_ph): Likewise. (_mm256_mask_reduce_ph): Likewise. (_mm256_maskz_reduce_ph): Likewise. (_mm_roundscale_ph): Likewise. (_mm_mask_roundscale_ph): Likewise. (_mm_maskz_roundscale_ph): Likewise. (_mm256_roundscale_ph): Likewise. (_mm256_mask_roundscale_ph): Likewise. (_mm256_maskz_roundscale_ph): Likewise. * config/i386/i386-builtin-types.def: Add corresponding builtin types. * config/i386/i386-builtin.def: Add corresponding new builtins. * config/i386/i386-expand.c (ix86_expand_args_builtin): Handle new builtin types. (ix86_expand_round_builtin): Ditto. * config/i386/sse.md (<mask_codefor>reducep<mode><mask_name>): Renamed to ... (<mask_codefor>reducep<mode><mask_name><round_saeonly_name>): ... this, and adjust for round operands. (reduces<mode><mask_scalar_name>): Likewise, with ... (reduces<mode><mask_scalar_name><round_saeonly_scalar_name): ... this. (<avx512>_rndscale<mode><mask_name><round_saeonly_name>): Adjust for HF vector modes. (avx512f_rndscale<mode><mask_scalar_name><round_saeonly_scalar_name>): Ditto. (*avx512f_rndscale<mode><round_saeonly_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 359 additions, 0 deletionsgcc/config/i386/avx512fp16intrin.h
- gcc/config/i386/avx512fp16vlintrin.h 153 additions, 0 deletionsgcc/config/i386/avx512fp16vlintrin.h
- gcc/config/i386/i386-builtin-types.def 4 additions, 0 deletionsgcc/config/i386/i386-builtin-types.def
- gcc/config/i386/i386-builtin.def 8 additions, 0 deletionsgcc/config/i386/i386-builtin.def
- gcc/config/i386/i386-expand.c 4 additions, 0 deletionsgcc/config/i386/i386-expand.c
- gcc/config/i386/sse.md 22 additions, 22 deletionsgcc/config/i386/sse.md
- gcc/testsuite/gcc.target/i386/avx-1.c 8 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx-1.c
- gcc/testsuite/gcc.target/i386/sse-13.c 8 additions, 0 deletionsgcc/testsuite/gcc.target/i386/sse-13.c
- gcc/testsuite/gcc.target/i386/sse-14.c 36 additions, 0 deletionsgcc/testsuite/gcc.target/i386/sse-14.c
- gcc/testsuite/gcc.target/i386/sse-22.c 36 additions, 0 deletionsgcc/testsuite/gcc.target/i386/sse-22.c
- gcc/testsuite/gcc.target/i386/sse-23.c 8 additions, 0 deletionsgcc/testsuite/gcc.target/i386/sse-23.c
Loading
Please register or sign in to comment