[AArch64] Generate SMOV in place of sext(fmov(...))
authorNicholas Guy <nicholas.guy@arm.com>
Mon, 16 Aug 2021 13:10:21 +0000 (14:10 +0100)
committerNicholas Guy <nicholas.guy@arm.com>
Wed, 25 Aug 2021 14:23:22 +0000 (15:23 +0100)
commit36fcf47fc80dfdd50243f1d5a8871282aa5c4ffa
tree0c6609cf9e4c848c8a2c02ecd6b9e00efbff3341
parent360ced3b8fd2cfb9f2a26deb739e6c381e98b9a5
[AArch64] Generate SMOV in place of sext(fmov(...))

A single smov instruction is capable of moving from a vector register while performing
the sign-extend during said move, rather than each step being performed by separate instructions.

Differential Revision: https://reviews.llvm.org/D108633
llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
llvm/test/CodeGen/AArch64/aarch64-smov-gen.ll [new file with mode: 0644]