Landing: 447618d27800

Project / Subsystem

gcc / out-of-ssa

Date

2026-07-26

Author

Kyrylo Tkachov

Commit

447618d278004c73797d4e579a02f721291072a6

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
out-of-ssa
patch_id
commit_hash
447618d278004c73797d4e579a02f721291072a6
source_type
github
headline
out-of-SSA: Split partitions of parameters and results
tldr
out-of-SSA now splits partitions for parameters and results, fixing miscompilations on aarch64.
author
Kyrylo Tkachov
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • out-of-ssa
  • optimization
  • aarch64
  • memory-aliasing
discussion_id_link
bugzilla_pr
date
2026-07-26T00:00:00.000Z

The split_overlapping_partition_decls function in the out-of-SSA pass has been modified to also split partitions associated with PARM_DECL and RESULT_DECL. Previously, these were excluded, leading to incorrect code generation when parameters or results needed multiple memory partitions (e.g., incoming argument slot and a local slot). This fix addresses miscompilations observed on aarch64 at -Os by ensuring that distinct memory slots for parameters and results are correctly handled, preventing erroneous fusion of memory accesses.