diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2016-01-18 20:59:04 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2016-01-18 20:59:04 +0000 |
commit | 3e5fb61978b7be692ec1d9033ded68eb6f1886fe (patch) | |
tree | 6c2bee79972e1f431510cfefa6c88675674ff6d0 /llvm/tools/llvm-split/llvm-split.cpp | |
parent | a94ae1e05ba3aeb57bc750ca24b11e5923d0a597 (diff) | |
download | bcm5719-llvm-3e5fb61978b7be692ec1d9033ded68eb6f1886fe.tar.gz bcm5719-llvm-3e5fb61978b7be692ec1d9033ded68eb6f1886fe.zip |
[X86][AVX2] Broadcast subvectors
AVX2 can only broadcast from the zero'th element of a vector, but if the broadcastable element is the zero'th element of a 128-bit subvector its advantageous to extract the subvector, broadcast from that and avoid the loading of shuffle mask data that would be needed for VPERMPS/VPERMD. The only exception being when the source type is 4f64 or 4i64 which can directly use the immediate shuffle VPERMPD/VPERMQ directly.
Differential Revision: http://reviews.llvm.org/D16050
llvm-svn: 258081
Diffstat (limited to 'llvm/tools/llvm-split/llvm-split.cpp')
0 files changed, 0 insertions, 0 deletions