Landing: 143bb738d4f1

Project / Subsystem

gcc / phiprop

Date

2026-03-28

Author

Andrew Pinski

Commit

143bb738d4f17b10ab369436ea1daaa2da3cc1dc

Source

github

Perf win

Yes

Breaking

No

All attributes

project
gcc
subsystem
phiprop
patch_id
commit_hash
143bb738d4f17b10ab369436ea1daaa2da3cc1dc
source_type
github
headline
PhiProp now handles stores between loads and PHIs.
tldr
PhiProp pass can now propagate values through a store instruction between a load and the PHI node, improving optimization for certain C++ code patterns.
author
Andrew Pinski
outcome
committed
performance_win
true
breaking_change
false
series_id
series_parts
[]
tags
  • optimization
  • ssa
  • phiprop
discussion_id_link
bugzilla_pr
date
2026-03-28T00:00:00.000Z

The PhiProp optimization pass now allows for one store instruction between a load and the phi node, enabling propagation in cases where a store instruction previously blocked the optimization. This change improves optimization for C++ code with min/max patterns where argument evaluation order affects optimization opportunities. Additional testcases were added to cover scenarios where the load would make a different.