[PATCH] D16994: [X86][AVX2] Fix SIGN_EXTEND vector handling on AVX2 targets.
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Mon Feb 8 10:14:22 PST 2016
RKSimon created this revision.
RKSimon added reviewers: ab, qcolombet, mkuper.
RKSimon added a subscriber: llvm-commits.
RKSimon set the repository for this revision to rL LLVM.
On AVX2 target we are poorly legalizing SIGN_EXTEND ops for which the input's legalized type doesn't have the same number of elements as the destination, resulting in an ANY_EXTEND followed by a SIGN_EXTEND_INREG.
This patch uses the existing SIGN_EXTEND -> SIGN_EXTEND_VECTOR_INREG combine to extend the input to the size of the result and using SIGN_EXTEND_VECTOR_INREG instead.
Repository:
rL LLVM
http://reviews.llvm.org/D16994
Files:
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/vec_int_to_fp.ll
test/CodeGen/X86/vector-sext.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D16994.47219.patch
Type: text/x-patch
Size: 5084 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160208/06aa03a8/attachment.bin>
More information about the llvm-commits
mailing list