Landing: 46713d4da111

Project / Subsystem

gcc / ifcvt

Date

2026-07-22

Author

Kyrylo Tkachov

Commit

46713d4da1115d44e78dc04fffd49c7c47f381ec

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
ifcvt
patch_id
—
commit_hash
46713d4da1115d44e78dc04fffd49c7c47f381ec
source_type
github
headline
ifcvt: Consolidate RTL if-conversion passes
tldr
ifcvt: Unifies three near-identical RTL passes into one parameterized by phase.
author
Kyrylo Tkachov
outcome
committed
performance_win
false
breaking_change
false
series_id
—
series_parts
[]
tags
  • • refactor
  • • optimization
  • • ifcvt
discussion_id_link
—
bugzilla_pr
—
date
2026-07-22T00:00:00.000Z

GCC’s ifcvt pass previously used three separate RTL optimization passes with near-identical logic. This change consolidates them into a single pass, pass_rtl_ifcvt, parameterized by an ifcvt_phase enum. This simplifies the codebase by removing duplication while maintaining the existing pipeline and behavior.