[AArch64] Add nvcast patterns for v4f16 and v8f16
authorPirama Arumuga Nainar <pirama@google.com>
Thu, 23 Apr 2015 17:32:25 +0000 (17:32 +0000)
committerPirama Arumuga Nainar <pirama@google.com>
Thu, 23 Apr 2015 17:32:25 +0000 (17:32 +0000)
commitdab5145cb377f98c35e267d6896209de7ad99c5c
tree942097d749236eace0f4a56e0e4a48f6ade1e17c
parentb7db5f28c5987747157d20c9303177b547090198
[AArch64] Add nvcast patterns for v4f16 and v8f16

Summary:
Constant stores of f16 vectors can create NvCast nodes from various
operand types to v4f16 or v8f16 depending on patterns in the stored
constants.  This patch adds nvcast rules with v4f16 and v8f16 values.

AArchISelLowering::LowerBUILD_VECTOR has the details on which constant
patterns generate the nvcast nodes.

Reviewers: jmolloy, srhines, ab

Subscribers: rengolin, aemerson, llvm-commits

Differential Revision: http://reviews.llvm.org/D9201

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@235610 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/AArch64/AArch64InstrInfo.td
test/CodeGen/AArch64/fp16-vector-nvcast.ll [new file with mode: 0644]