Landing: c66387c4b201

Project / Subsystem

gcc / xtensa

Date

2026-09-12

Author

Takayuki 'January June' Suwa

Commit

c66387c4b201e2576cbd06909e861ada1884685f

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
xtensa
patch_id
—
commit_hash
c66387c4b201e2576cbd06909e861ada1884685f
source_type
github
headline
XTENSA: Simplify xtensa_valid_move() by removing obsolete check
tldr
Xtensa target code removes an old workaround for the Reload pass, as LRA now handles constraints correctly.
author
Takayuki 'January June' Suwa
outcome
committed
performance_win
false
breaking_change
false
series_id
—
series_parts
[]
tags
  • • xtensa
  • • register allocation
  • • optimization
discussion_id_link
—
bugzilla_pr
—
date
2026-09-12T00:00:00.000Z

The xtensa_valid_move function has been simplified by removing a workaround that prevented non-register sources from being directly assigned to the stack pointer. This check was originally necessary because the older Reload pass was less strict with operand constraints. With the adoption of the Later Register Allocator (LRA), which adheres strictly to constraints, this workaround is no longer needed, and the function can be safely simplified. A new test case ensures the correct behavior.