Landing: f2609a4c653a

Project / Subsystem

gcc / x86_64

Date

2026-05-16

Author

Roger Sayle

Commit

f2609a4c653a4993eec7ed9a2ad05caf936f0178

Source

github

Perf win

Yes

Breaking

No

All attributes

project
gcc
subsystem
x86_64
patch_id
commit_hash
f2609a4c653a4993eec7ed9a2ad05caf936f0178
source_type
github
headline
x86_64: Enable STV conversion for TImode register moves.
tldr
Extends x86_64's Scalar-To-Vector (STV) pass to handle TImode register moves with hard registers.
author
Roger Sayle
outcome
committed
performance_win
true
breaking_change
false
series_id
series_parts
[]
tags
  • x86_64
  • optimization
  • simd
  • sse
  • avx
discussion_id_link
bugzilla_pr
date
2026-05-16T00:00:00.000Z

This commit extends the x86_64 Scalar-To-Vector (STV) pass to include chains that originate or terminate with moves from/to hard registers. By supporting STV conversion for TImode register-to-register moves, where either the source or destination (but not both) is a hard register, the compiler can now convert more code sequences to use SSE instructions which leads to faster execution.