Landing: b13642241df8

Project / Subsystem

gcc / sh

Date

2024-09-29

Author

Oleg Endo

Commit

b13642241df8f18dfd2e32f7e550d53dbea6e55f

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
sh
patch_id
commit_hash
b13642241df8f18dfd2e32f7e550d53dbea6e55f
source_type
github
headline
Tighten memory predicates and constraints for SH architecture
tldr
SH architecture memory access rules strengthened, especially with LRA.
author
Oleg Endo
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • sh
  • register allocation
  • architecture
  • constraints
discussion_id_link
bugzilla_pr
date
2024-09-29T00:00:00.000Z

This commit tightens memory predicates and constraints for the SH architecture, particularly for the Load-Ready-Access (LRA) register allocator. It rejects invalid hard registers for memory address registers when LRA is used, requiring stricter predicates and constraints. This change aims to ensure correct memory access patterns and prevent errors during code generation.