Landing: a87de1ad7ab0

Project / Subsystem

gcc / ext-dce

Date

2026-09-18

Author

Zhongyao Chen

Commit

a87de1ad7ab071584907f123ffd7940b3f74f17c

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
ext-dce
patch_id
—
commit_hash
a87de1ad7ab071584907f123ffd7940b3f74f17c
source_type
github
headline
ext-dce: Mark spanned hard registers live for multi-reg references
tldr
ext-dce now correctly handles multi-register hard registers, preventing premature elimination of preceding code.
author
Zhongyao Chen
outcome
committed
performance_win
false
breaking_change
false
series_id
—
series_parts
[]
tags
  • • optimization
  • • dead-code-elimination
  • • rtl
discussion_id_link
—
bugzilla_pr
—
date
2026-09-18T00:00:00.000Z

The extended dead code elimination (ext-dce) pass now correctly marks all spanned hard registers as live when references involve multiple registers. This fixes a bug where ext-dce failed to account for all registers in multi-register references, leading to the incorrect elimination of valid code, as reported in PR127367.