diff options
author | Cullen Rhodes <cullen.rhodes@arm.com> | 2019-05-20 10:29:48 +0000 |
---|---|---|
committer | Cullen Rhodes <cullen.rhodes@arm.com> | 2019-05-20 10:29:48 +0000 |
commit | 0fc6347b35841575e82e3c0ff7a762ce92758a60 (patch) | |
tree | 7b0ed97a6432a9058b2e3d8dab320318ba67ae38 /llvm/lib | |
parent | 68774edcd65a310aadbaaffa7a63a416eef7cede (diff) | |
download | bcm5719-llvm-0fc6347b35841575e82e3c0ff7a762ce92758a60.tar.gz bcm5719-llvm-0fc6347b35841575e82e3c0ff7a762ce92758a60.zip |
[AArch64][SVE2] Asm: add saturating multiply-add interleaved long instructions
Summary:
Patch adds support for SQDMLALBT and SQDMLSLBT instructions.
The specification can be found here:
https://developer.arm.com/docs/ddi0602/latest
Reviewed By: rovka
Differential Revision: https://reviews.llvm.org/D61998
llvm-svn: 361135
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td b/llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td index 5c0845cf7fd..03f6419bff9 100644 --- a/llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td +++ b/llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td @@ -1109,6 +1109,10 @@ let Predicates = [HasSVE2] in { defm SQDMLSLB_ZZZ : sve2_int_mla_long<0b11010, "sqdmlslb">; defm SQDMLSLT_ZZZ : sve2_int_mla_long<0b11011, "sqdmlslt">; + // SVE2 saturating multiply-add interleaved long + defm SQDMLALBT_ZZZ : sve2_int_mla_long<0b00010, "sqdmlalbt">; + defm SQDMLSLBT_ZZZ : sve2_int_mla_long<0b00011, "sqdmlslbt">; + // SVE2 integer multiply long defm SQDMULLB_ZZZ : sve2_wide_int_arith_long<0b11000, "sqdmullb">; defm SQDMULLT_ZZZ : sve2_wide_int_arith_long<0b11001, "sqdmullt">; |