[PATCH] D43738: [X86] Use target independent zero_extend/sign_extend nodes for vectors with same number of elements.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Feb 24 21:58:36 PST 2018


craig.topper created this revision.
craig.topper added reviewers: RKSimon, spatel.

This patch uses ISD::ZERO_EXTEND/SIGN_EXTEND when the number of elements match. I'm still not sure what to do about the cases when the number of elements don't match, but we can't use ZERO/SIGN_EXTEND_VECTOR_INREG either. Maybe we can use ZERO/SIGN_EXTEND_VECTOR_INREG with the vector sizes matched and emit a subreg extract in the isel output to get the xmm register as an input?


https://reviews.llvm.org/D43738

Files:
  lib/Target/X86/X86ISelLowering.cpp
  lib/Target/X86/X86InstrAVX512.td
  lib/Target/X86/X86InstrSSE.td
  test/CodeGen/X86/vector-trunc.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D43738.135812.patch
Type: text/x-patch
Size: 23377 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180225/0662e9d2/attachment.bin>


More information about the llvm-commits mailing list