Landing: c9e6fa83a85e

Project / Subsystem

gcc / i386

Date

2026-07-08

Author

Uros Bizjak

Commit

c9e6fa83a85e8e86811bf03c71e607247397e082

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
i386
patch_id
commit_hash
c9e6fa83a85e8e86811bf03c71e607247397e082
source_type
github
headline
i386: Fix CCMP instruction support checks for floating-point modes
tldr
Ensures CCMP instruction generation respects available floating-point instruction set support on x86.
author
Uros Bizjak
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • i386
  • compiler
  • optimization
  • floating point
discussion_id_link
bugzilla_pr
date
2026-07-08T00:00:00.000Z

This commit corrects how the GCC compiler checks for support of the CCMP instruction on i386 targets when dealing with floating-point comparisons. Previously, the compiler might attempt to generate CCMP sequences for modes like DFmode (double-precision) or SFmode (single-precision) without verifying that the necessary hardware instruction sets (like SSE or AVX512FP16) were enabled. The fix restricts the use of CCMP based on the target’s floating-point capabilities, preventing incorrect code generation.