https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121688
--- Comment #3 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Jakub Jelinek <[email protected]>: https://gcc.gnu.org/g:03a6da1e6edb00de2d4a0554a901e7939749ffd4 commit r17-5217-g03a6da1e6edb00de2d4a0554a901e7939749ffd4 Author: Jakub Jelinek <[email protected]> Date: Thu Oct 15 11:07:27 2026 +0200 i386: Fix up VF48H_AVX512VL [PR121688] On Sun, Oct 11, 2026 at 08:24:59PM -0700, Hongtao Liu wrote: > With this condidtion extendv16hfv16sf is valid even w/o TARGET_AVX512F. > I suggest to change iterator VF48H_AVX512VL to (or add a new iterator) > > (define_mode_iterator VF48H_F16C > [(V8DF "TARGET_AVX512FP16") > (V16SF "TARGET_AVX512F") > (V8SF "TARGET_F16C || TARGET_AVX512VL")]) Sorry, I've missed the last line of your proposed change, changed the conditions as you've suggested but not this one. Here is a patch to change that, which improves code generation for -mf16c -mavx512fp16 -mno-avx512vl. 2026-10-15 Jakub Jelinek <[email protected]> PR target/121688 * config/i386/sse.md (VF48H_AVX512VL): Change V8SF condition to TARGET_F16C || TARGET_AVX512VL. * gcc.target/i386/pr121688-avx512fp16novl.c: New test. Reviewed-by: Uros Bizjak <[email protected]>
