[AArch64] Add instruction costs for FP_TO_UINT and FP_TO_SINT with half types
authorDavid Sherwood <david.sherwood@arm.com>
Tue, 6 Apr 2021 10:06:58 +0000 (11:06 +0100)
committerDavid Sherwood <david.sherwood@arm.com>
Wed, 21 Apr 2021 08:39:45 +0000 (09:39 +0100)
commit57ca65e21e9a48040e929a506a259ee2e4b42088
treeb0561fa86726456243f4cd3db5620a5e5f19a401
parentcf61cf07248a0c395b63453876f4a12d21148c61
[AArch64] Add instruction costs for FP_TO_UINT and FP_TO_SINT with half types

We were missing some instruction costs when converting vectors of
floating point half types into integers, so I've added those here.
I also manually generated assembly code for each FP->int case and
looked at the number of instructions generated, which meant
adjusting some of the existing costs too.

I've updated an existing test to reflect the new costs:

  Analysis/CostModel/AArch64/sve-fptoi.ll

Differential Revision: https://reviews.llvm.org/D99935
llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
llvm/test/Analysis/CostModel/AArch64/sve-fptoi.ll