Landing: 15cabcf0bd5d

Project / Subsystem

gcc / i386

Date

2026-09-10

Author

Roger Sayle

Commit

15cabcf0bd5d964181d43fb6b8c7daeebf874e24

Source

github

Perf win

Yes

Breaking

No

All attributes

project
gcc
subsystem
i386
patch_id
—
commit_hash
15cabcf0bd5d964181d43fb6b8c7daeebf874e24
source_type
github
headline
i386: Use insertps for SSE vector permutations
tldr
Improves SSE vector permutation performance on x86 by using the insertps instruction.
author
Roger Sayle
outcome
committed
performance_win
true
breaking_change
false
series_id
—
series_parts
[]
tags
  • • i386
  • • SSE
  • • optimization
  • • vectorization
discussion_id_link
—
bugzilla_pr
—
date
2026-09-10T00:00:00.000Z

This patch enhances the i386 backend’s ability to implement vector permutations for V4SI and V4SF types by leveraging the SSE 4.1 insertps instruction. Previously, such operations resulted in multiple instructions; now, they can be consolidated into a single insertps instruction, significantly reducing code size and improving performance. This also aids in optimizing zero-extension operations for SSE registers.