Landing: 5c23bb074af2

Project / Subsystem

gcc / gcc/tree-optimization

Date

2026-06-30

Author

Kyrylo Tkachov

Commit

5c23bb074af23f00dd3fe1745b9dd99245fa4bba

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
gcc/tree-optimization
patch_id
commit_hash
5c23bb074af23f00dd3fe1745b9dd99245fa4bba
source_type
github
headline
Remove path-splitting pass, deprecate -fsplit-paths
tldr
GCC removes the path-splitting optimization pass and deprecates its associated flag due to negative interactions with other optimizations.
author
Kyrylo Tkachov
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • optimization
  • gcc
  • pass removal
discussion_id_link
bugzilla_pr
date
2026-06-30T00:00:00.000Z

The pass_split_paths optimization pass, which duplicated loop bodies to optimize control flow, has been removed from GCC. This pass often interfered with crucial optimizations like loop unrolling and if-conversion by duplicating code before common subexpression elimination and other passes could run. The associated -fsplit-paths option is now deprecated and does nothing, though it is still accepted for backward compatibility.