Landing: 4446d3e1045b
Project / Subsystem
gcc / gcc/i386
Date
2026-05-20
Author
Jakub Jelinek
Commit
4446d3e1045bd3728f8e57ee4af85f7d1b190e4f
Source
github
Perf win
Yes
Breaking
No
All attributes
- project
- gcc
- subsystem
- gcc/i386
- patch_id
- —
- commit_hash
- 4446d3e1045bd3728f8e57ee4af85f7d1b190e4f
- source_type
- github
- headline
- I386: Use vpaddq + vpermilpd for some non-const permutations
- tldr
- The compiler now uses `vpaddq` and `vpermilpd` to implement certain vector permutations on x86, improving performance.
- author
- Jakub Jelinek
- outcome
- committed
- performance_win
- true
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • gcc
- • i386
- • avx
- • optimization
- • vectorization
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-05-20T00:00:00.000Z
GCC now uses vpaddq and vpermilpd instructions to implement non-constant permutations for V2DI and V2DF modes when targeting AVX-enabled x86. This change avoids more complex instruction sequences, resulting in faster code. New test cases have been added to verify the correctness of the new implementation.