[ARM] Adjust how NEON shifts are lowered
authorDavid Green <david.green@arm.com>
Mon, 15 Jul 2019 10:44:50 +0000 (10:44 +0000)
committerDavid Green <david.green@arm.com>
Mon, 15 Jul 2019 10:44:50 +0000 (10:44 +0000)
commitda750b1688fb82ca28d89d2dbe08784ed16f978c
tree01964c8866845aeaa097ea241f25c994b2e2f4db
parentd021ad9fbeb6d29c8551879f703f45e263e7a700
[ARM] Adjust how NEON shifts are lowered

This adjusts the way that we lower NEON shifts to use a DAG target node, not
via a neon intrinsic. This is useful for handling MVE shifts operations in the
same the way. It also renames some of the immediate shift nodes for
consistency, and moves some of the processing of immediate shifts into
LowerShift allowing it to capture more cases.

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

llvm-svn: 366051
llvm/lib/Target/ARM/ARMISelLowering.cpp
llvm/lib/Target/ARM/ARMISelLowering.h
llvm/lib/Target/ARM/ARMInstrNEON.td
llvm/test/CodeGen/ARM/vpadd.ll
llvm/test/CodeGen/ARM/vuzp.ll