https://gcc.gnu.org/bugzilla/show_bug.cgi?id=126148
--- Comment #3 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The releases/gcc-16 branch has been updated by Uros Bizjak <[email protected]>: https://gcc.gnu.org/g:c79762f15836588c1ed57bc8049c13a12e60b5db commit r16-9249-gc79762f15836588c1ed57bc8049c13a12e60b5db Author: Uros Bizjak <[email protected]> Date: Wed Jul 8 16:50:15 2026 +0200 i386: Fix ccmp support checks for floating-point modes [PR126148] The ccmp expansion code allowed DFmode, SFmode and HFmode comparisons without verifying that the corresponding floating-point instruction set was available. This could result in attempts to generate ccmp sequences for comparisons that cannot be emitted as a single instruction under the selected target options. Restrict XFmode support to x87 targets, DFmode/SFmode support to targets with either x87 or SSE with SSE math enabled, and HFmode support to targets with AVX512FP16 enabled. PR target/126148 gcc/ChangeLog: * config/i386/i386-expand.cc (ix86_gen_ccmp_first): Restrict floating-point modes accepted for ccmp according to the available floating-point instruction set. gcc/testsuite/ChangeLog: * gcc.target/i386/pr126148.c: New test. (cherry picked from commit c9e6fa83a85e8e86811bf03c71e607247397e082)
