diff options
author | Krzysztof Parzyszek <kparzysz@codeaurora.org> | 2016-07-29 16:44:27 +0000 |
---|---|---|
committer | Krzysztof Parzyszek <kparzysz@codeaurora.org> | 2016-07-29 16:44:27 +0000 |
commit | 0bd55a7608098ebacd4f8bd4a83a15bc1b3e7206 (patch) | |
tree | 7556e05822bd5220fdbac8db5f28fa25d145f5bf /llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp | |
parent | 6731dead227b7a8783a67c40ba05a04288cc364b (diff) | |
download | llvm-0bd55a7608098ebacd4f8bd4a83a15bc1b3e7206.zip llvm-0bd55a7608098ebacd4f8bd4a83a15bc1b3e7206.tar.gz llvm-0bd55a7608098ebacd4f8bd4a83a15bc1b3e7206.tar.bz2 |
[Hexagon] Custom lower VECTOR_SHUFFLE and EXTRACT_SUBVECTOR for HVX
If the mask of a vector shuffle has alternating odd or even numbers
starting with 1 or 0 respectively up to the largest possible index
for the given type in the given HVX mode (single of double) we can
generate vpacko or vpacke instruction respectively.
E.g.
%42 = shufflevector <32 x i16> %37, <32 x i16> %41,
<32 x i32> <i32 1, i32 3, ..., i32 63>
is %42.h = vpacko(%41.w, %37.w)
Patch by Pranav Bhandarkar.
llvm-svn: 277168
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp')
0 files changed, 0 insertions, 0 deletions