aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/frontend-passes.c
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2021-12-14 18:27:22 +0100
committerUros Bizjak <ubizjak@gmail.com>2021-12-14 18:28:21 +0100
commit7a54d3deecf967029f18aa5ed1fcbdb752e213b9 (patch)
tree849f669059e68fe9a6a5315740601242f58e6664 /gcc/fortran/frontend-passes.c
parent2cf62ef5aa80e3659a8150a48d93a1d333f1d292 (diff)
downloadgcc-7a54d3deecf967029f18aa5ed1fcbdb752e213b9.zip
gcc-7a54d3deecf967029f18aa5ed1fcbdb752e213b9.tar.gz
gcc-7a54d3deecf967029f18aa5ed1fcbdb752e213b9.tar.bz2
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 <ubizjak@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.
Diffstat (limited to 'gcc/fortran/frontend-passes.c')
0 files changed, 0 insertions, 0 deletions