Landing: 102b3cc3738f
Project / Subsystem
gcc / gcc
Date
2026-04-28
Author
Vladimir N. Makarov
Commit
102b3cc3738f5db788134989bdc93b817316f320
Source
github
Perf win
Yes
Breaking
No
All attributes
- project
- gcc
- subsystem
- gcc
- patch_id
- —
- commit_hash
- 102b3cc3738f5db788134989bdc93b817316f320
- source_type
- github
- headline
- Fix register elimination for INC/DEC RTL instructions.
- tldr
- This patch corrects a typo in the LRA pass that prevented the proper elimination of hard registers for increment/decrement RTL instructions.
- author
- Vladimir N. Makarov
- outcome
- committed
- performance_win
- true
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • optimization
- • register allocation
- • bugfix
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-04-28T00:00:00.000Z
A typo in the LRA (Local Register Allocator) pass caused the compiler to incorrectly identify pseudos (pseudo registers) instead of hard registers when processing INC and DEC RTL (Register Transfer Language) instructions. This prevented the elimination of hard register operands, potentially leading to suboptimal register allocation. The patch corrects the condition to properly consider hard registers, allowing for more effective register elimination.