https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103571
--- Comment #23 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Uros Bizjak <u...@gcc.gnu.org>: https://gcc.gnu.org/g:7a54d3deecf967029f18aa5ed1fcbdb752e213b9 commit r12-5966-g7a54d3deecf967029f18aa5ed1fcbdb752e213b9 Author: Uros Bizjak <ubiz...@gmail.com> Date: Tue Dec 14 18:27:22 2021 +0100 i386: Implement VxHF vector set/insert/extract with lower ABI levels This is a preparation patch that moves VxHF vector set/insert/extract expansions from AVX512FP16 ABI to lower ABIs. There are no functional changes for -mavx512fp16 and a follow-up patch is needed to actually enable VxHF vector modes for lower ABIs. 2021-12-14 Uroš Bizjak <ubiz...@gmail.com> gcc/ChangeLog: PR target/103571 * config/i386/i386-expand.c (ix86_expand_vector_init_duplicate) <case E_V8HFmode>: Implement for TARGET_SSE2. <case E_V16HFmode>: Implement for TARGET_AVX. <case E_V32HFmode>: Implement for TARGET_AVX512F. (ix86_expand_vector_set_var): Handle V32HFmode without TARGET_AVX512BW. (ix86_expand_vector_extract) <case E_V8HFmode>: Implement for TARGET_SSE2. <case E_V16HFmode>: Implement for TARGET_AVX. <case E_V32HFmode>: Implement for TARGET_AVX512BW. (expand_vec_perm_broadcast_1) <case E_V8HFmode>: New. * config/i386/sse.md (VI12HF_AVX512VL): Remove TARGET_AVX512FP16 condition. (V): Ditto. (V_256_512): Ditto. (avx_vbroadcastf128_<mode>): Use V_256H mode iterator.