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.