Landing: da7dc333c4a9

Project / Subsystem

gcc / avoid-store-forwarding

Date

2026-03-27

Author

Konstantinos Eleftheriou

Commit

da7dc333c4a9ef997a9f3082fba73abf0380d684

Source

github

Perf win

Yes

Breaking

No

All attributes

project
gcc
subsystem
avoid-store-forwarding
patch_id
commit_hash
da7dc333c4a9ef997a9f3082fba73abf0380d684
source_type
github
headline
Avoid-store-forwarding: Continue BB analysis after complex memory ops
tldr
The avoid-store-forwarding pass now continues analysis after encountering complex memory operations, potentially catching more optimization opportunities.
author
Konstantinos Eleftheriou
outcome
committed
performance_win
true
breaking_change
false
series_id
series_parts
[]
tags
  • optimization
  • store-forwarding
  • gcc
discussion_id_link
bugzilla_pr
date
2026-03-27T00:00:00.000Z

The avoid-store-forwarding pass in GCC previously stopped analyzing a basic block after encountering a complex memory operation. This change replaces the early return with a flush-and-continue, clearing pending store candidates and continuing the scan. This allows the pass to identify and exploit store-forwarding opportunities even after complex memory operations, potentially improving performance.