[AArch64] support neon_sshl and neon_ushl in performIntrinsicCombine.
authorFlorian Hahn <flo@fhahn.com>
Mon, 23 Sep 2019 09:38:53 +0000 (09:38 +0000)
committerFlorian Hahn <flo@fhahn.com>
Mon, 23 Sep 2019 09:38:53 +0000 (09:38 +0000)
commit3e2fdbee80b0d14fcdb67cbb3072f43dbec66b38
tree0b6727cf3ae2cf12ed7c9944d01b631a2842d716
parentc65628a49ad3883c2c52165e7f7763431738d242
[AArch64] support neon_sshl and neon_ushl in performIntrinsicCombine.

Try to generate ushll/sshll for aarch64_neon_ushl/aarch64_neon_sshl,
if their first operand is extended and the second operand is a constant

Also adds a few tests marked with FIXME, where we can further increase
codegen.

Reviewers: t.p.northover, samparker, dmgreen, anemet

Reviewed By: anemet

Differential Revision: https://reviews.llvm.org/D62308

llvm-svn: 372565
llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
llvm/test/CodeGen/AArch64/arm64-vshift.ll