Landing: c7ebd58535ad
Project / Subsystem
gcc / match/fold
Date
2026-08-11
Author
Andrea Pinski
Commit
c7ebd58535ad63351123e2aa98b92b1eec3c8ca9
Source
github
Perf win
Yes
Breaking
No
All attributes
- project
- gcc
- subsystem
- match/fold
- patch_id
- —
- commit_hash
- c7ebd58535ad63351123e2aa98b92b1eec3c8ca9
- source_type
- github
- headline
- match/fold: Add NE, XOR, and EQ to combine_comparisons
- tldr
- The `combine_comparisons` function now supports NE, XOR, and EQ, simplifying floating-point comparisons and code structure.
- author
- Andrea Pinski
- outcome
- committed
- performance_win
- true
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • optimization
- • pattern matching
- • floating point
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-08-11T00:00:00.000Z
GCC’s combine_comparisons function has been updated to include support for the NE (not equal), XOR, and EQ (equal) operators. This change simplifies the internal match.pd patterns by allowing them to utilize this function for these comparison types, leading to cleaner code and enabling more opportunities for merging floating-point comparisons. The relevant patterns in match.pd have been reordered to ensure these new combinations are prioritized.