Landing: ca5cffec066f
Project / Subsystem
gcc / arc
Date
2026-06-24
Author
Michiel Derhaeg
Commit
ca5cffec066fb8a7edd13dd12792505739381b42
Source
github
Perf win
No
Breaking
No
All attributes
- project
- gcc
- subsystem
- arc
- patch_id
- —
- commit_hash
- ca5cffec066fb8a7edd13dd12792505739381b42
- source_type
- github
- headline
- Arc: Fix invalid register index addressing for uncached stores
- tldr
- GCC's Arc backend now correctly handles register-based addressing for uncached stores, fixing invalid operand issues.
- author
- Michiel Derhaeg
- outcome
- committed
- performance_win
- false
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • arc
- • compiler
- • backend
- • addressing mode
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-06-24T00:00:00.000Z
A bug in GCC’s Arc backend that allowed invalid register-index addressing for uncached stores has been fixed. The stdi<mode> instruction incorrectly used a too-liberal predicate, allowing [reg,reg] operands which are not valid on Arc. This commit corrects the addressing mode by forcing the address into a register when necessary and uses a more restrictive predicate for the destination operand.