[all-commits] [llvm/llvm-project] 4177e6: [X86] lowerShuffleAsVTRUNC - support offseted trun...
Simon Pilgrim via All-commits
all-commits at lists.llvm.org
Tue Dec 13 06:00:52 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 4177e6cd4f96903b57dc166118149a3ff8e65c4d
https://github.com/llvm/llvm-project/commit/4177e6cd4f96903b57dc166118149a3ff8e65c4d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2022-12-13 (Tue, 13 Dec 2022)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/shuffle-strided-with-offset-512.ll
M llvm/test/CodeGen/X86/shuffle-vs-trunc-512.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-2.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-4.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-4.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-8.ll
M llvm/test/CodeGen/X86/vector-shuffle-512-v32.ll
M llvm/test/CodeGen/X86/x86-interleaved-access.ll
Log Message:
-----------
[X86] lowerShuffleAsVTRUNC - support offseted truncations
Extend the <0,Scale,2*Scale,..> pattern to allow for a fixed offset <Offset,Offset+Scale,Offset+2*Scale,..> pattern, which will lower to a single additional bitshift/pshufd.
At the moment I've limited this to cases where the LHS/RHS operands are concatenated for free, but this is only to avoid a couple of regressions that should be easily addressable in followups.
More information about the All-commits
mailing list