[PATCH] D78486: [SystemZ] Expand vector zero-extend into a shuffle.

Jonas Paulsson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 30 08:29:47 PDT 2020


jonpa updated this revision to Diff 261236.
jonpa added a comment.

It certainly seems to be an improvement on two benchmarks to do just either one unpack or else a vperm (and not multiple unpacks). In fact, i505.mcf actually regressed (2.5%) when doing two unpacks instead of a vperm (with -ffp-contract=fast). So the initial idea of reducing the number of vperms seems to have been proven wrong - it is better to have a single vperm on the critical path rather than multiple unpacks.

Patch simplified to do just one unpack whenever possible.

Tests updated.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D78486/new/

https://reviews.llvm.org/D78486

Files:
  llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
  llvm/lib/Target/SystemZ/SystemZISelLowering.h
  llvm/test/CodeGen/SystemZ/vec-move-16.ll
  llvm/test/CodeGen/SystemZ/vec-move-23.ll
  llvm/test/CodeGen/SystemZ/vec-move-24.ll
  llvm/test/CodeGen/SystemZ/vec-zext.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D78486.261236.patch
Type: text/x-patch
Size: 19767 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200430/3e18aa6a/attachment.bin>


More information about the llvm-commits mailing list