[PATCH] D83245: [PowerPC][Power10] Exploit the xxsplti32dx instruction when lowering VECTOR_SHUFFLE.
Amy Kwan via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 6 11:17:47 PDT 2020
amyk created this revision.
amyk added reviewers: power-llvm-team, PowerPC, nemanjai, hfinkel.
amyk added a project: LLVM.
Herald added subscribers: shchenz, hiraditya.
This patch aims to exploit the `xxsplti32dx XT, IX, IMM32` instruction when lowering `VECTOR_SHUFFLE`s.
We implement `lowerToXXSPLTI32DX` when lowering vector shuffles to check if:
- Element size is 4 bytes
- The RHS is a constant vector (and constant splat of 4-bytes)
- The shuffle mask is a suitable mask for the XXSPLTI32DX instruction where it is one of the 32 masks:
<0, 4-7, 2, 4-7>
<4-7, 1, 4-7, 3>
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D83245
Files:
llvm/lib/Target/PowerPC/PPCISelLowering.cpp
llvm/lib/Target/PowerPC/PPCISelLowering.h
llvm/lib/Target/PowerPC/PPCInstrPrefix.td
llvm/test/CodeGen/PowerPC/p10-splatImm32.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D83245.275769.patch
Type: text/x-patch
Size: 10966 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200706/fa0c26c9/attachment.bin>
More information about the llvm-commits
mailing list