Landing: bf9b70e68133

Project / Subsystem

gcc / gcc

Date

2026-04-30

Author

Vladimir N. Makarov

Commit

bf9b70e68133498358391c054da60b939c0feaa9

Source

github

Perf win

Yes

Breaking

No

All attributes

project
gcc
subsystem
gcc
patch_id
commit_hash
bf9b70e68133498358391c054da60b939c0feaa9
source_type
github
headline
Fix soft conflict and hard register cost calculation
tldr
Corrects the use of conflict allocno mode when finding soft conflicts in IRA, improving code generation.
author
Vladimir N. Makarov
outcome
committed
performance_win
true
breaking_change
false
series_id
series_parts
[]
tags
  • gcc
  • IRA
  • register allocation
  • optimization
discussion_id_link
bugzilla_pr
date
2026-04-30T00:00:00.000Z

This commit corrects an error in GCC’s Intermediate Representation Allocator (IRA) that occurred when identifying soft register conflicts. The code was incorrectly using the conflict allocation number mode, which could lead to increased shuffling of data between registers at region borders, resulting in suboptimal code generation. By using the correct allocation number mode, the patch aims to reduce unnecessary data movement and improve the overall quality of the generated code.