[PATCH] D34630: [Power9] Add additional patterns to recognize and transform insertelt/extractelt to vinsert[h|b]/vextractu[h|b] instructions.
Graham Yiu via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 26 09:59:05 PDT 2017
gyiu created this revision.
- Added code to recognize insertelement on v8i16/v16i8 vectors and transform to use vinserth/vinsertb instructions.
- Added code to recognize extractelement on v8i16/v16i8 vectors, specifically extracting the elements from doubleword element 1 of a VSR, to use vextractuh/vextractub instructions. The normal code-gen requires an extra xxswapd instruction to get the elements into the proper half of the register before a mfvsrd.
- Added LIT tests for above patterns.
Repository:
rL LLVM
https://reviews.llvm.org/D34630
Files:
lib/Target/PowerPC/PPCISelLowering.cpp
lib/Target/PowerPC/PPCInstrVSX.td
test/CodeGen/PowerPC/p9-vinsert-vextract.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D34630.103978.patch
Type: text/x-patch
Size: 21175 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170626/d2adb59a/attachment.bin>
More information about the llvm-commits
mailing list