Landing: 867ca749704d

Project / Subsystem

gcc / scev

Date

2026-05-13

Author

Tamar Christina

Commit

867ca749704d1d7bd042f1a4d8403801df8cc172

Source

github

Perf win

Yes

Breaking

No

All attributes

project
gcc
subsystem
scev
patch_id
commit_hash
867ca749704d1d7bd042f1a4d8403801df8cc172
source_type
github
headline
SCEV now maintains affine CHRECs in the presence of type conversions.
tldr
SCEV analysis is improved to recognize affine loop accesses even with type conversions, enabling better vectorization.
author
Tamar Christina
outcome
committed
performance_win
true
breaking_change
false
series_id
series_parts
[]
tags
  • optimization
  • vectorization
  • loop
  • arm
discussion_id_link
bugzilla_pr
date
2026-05-13T00:00:00.000Z

The Scalar Evolution (SCEV) analysis pass is improved to better recognize affine loop accesses when type conversions are involved. This allows the vectorizer to generate more efficient code, avoiding gather operations in favor of linear memory accesses. For example, in loops that access arrays with indices involving both integer and floating-point types, SCEV can now simplify the address calculations, which leads to better performance.