Landing: d373724d1dde
Project / Subsystem
gcc / amdgcn
Date
2026-09-15
Author
Andrew Stubbs
Commit
d373724d1ddeef9b322b6b6078fc1de8dbe27791
Source
github
Perf win
Yes
Breaking
No
All attributes
- project
- gcc
- subsystem
- amdgcn
- patch_id
- —
- commit_hash
- d373724d1ddeef9b322b6b6078fc1de8dbe27791
- source_type
- github
- headline
- amdgcn: Spill scalars to both SGPRs and AVGPRs for performance
- tldr
- AMDGCN backend now spills scalars to both SGPRs and AVGPRs, improving performance across various benchmarks.
- author
- Andrew Stubbs
- outcome
- committed
- performance_win
- true
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • gcc
- • amdgcn
- • gpu
- • optimization
- • registers
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-09-15T00:00:00.000Z
The AMD GCN backend in GCC has been updated to allow scalars residing in Vector General Purpose Registers (VGPRs) to be spilled into either Scalar General Purpose Registers (SGPRs) or Additional VGPRs (AVGPRs). This change addresses performance regressions observed when scalars were exclusively spilled to SGPRs, by providing flexibility in register allocation. The new approach improves performance across a range of benchmarks by better managing register pressure.