2017-11-08 00:58:13 +08:00
|
|
|
//=- AArch64SVEInstrInfo.td - AArch64 SVE Instructions -*- tablegen -*-----=//
|
|
|
|
//
|
|
|
|
// The LLVM Compiler Infrastructure
|
|
|
|
//
|
|
|
|
// This file is distributed under the University of Illinois Open Source
|
|
|
|
// License. See LICENSE.TXT for details.
|
|
|
|
//
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
//
|
|
|
|
// AArch64 Scalable Vector Extension (SVE) Instruction definitions.
|
|
|
|
//
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
|
|
|
let Predicates = [HasSVE] in {
|
|
|
|
defm ADD_ZZZ : sve_int_bin_cons_arit_0<0b000, "add">;
|
|
|
|
defm SUB_ZZZ : sve_int_bin_cons_arit_0<0b001, "sub">;
|
2017-12-20 19:02:42 +08:00
|
|
|
|
2018-01-10 01:01:27 +08:00
|
|
|
defm ADD_ZPmZ : sve_int_bin_pred_arit_0<0b000, "add">;
|
|
|
|
defm SUB_ZPmZ : sve_int_bin_pred_arit_0<0b001, "sub">;
|
|
|
|
|
2017-12-20 19:02:42 +08:00
|
|
|
defm ZIP1_ZZZ : sve_int_perm_bin_perm_zz<0b000, "zip1">;
|
|
|
|
defm ZIP2_ZZZ : sve_int_perm_bin_perm_zz<0b001, "zip2">;
|
|
|
|
|
|
|
|
defm ZIP1_PPP : sve_int_perm_bin_perm_pp<0b000, "zip1">;
|
|
|
|
defm ZIP2_PPP : sve_int_perm_bin_perm_pp<0b001, "zip2">;
|
2018-01-10 19:32:47 +08:00
|
|
|
|
|
|
|
defm DUP_ZR : sve_int_perm_dup_r<"dup">;
|
[AArch64][SVE] Asm: Add support for RDVL/ADDVL/ADDPL instructions
Reviewers: fhahn, rengolin, t.p.northover, echristo, olista01, SjoerdMeijer
Reviewed By: SjoerdMeijer
Subscribers: SjoerdMeijer, aemerson, javed.absar, tschuett, kristof.beyls, llvm-commits
Differential Revision: https://reviews.llvm.org/D41900
llvm-svn: 322951
2018-01-19 23:22:00 +08:00
|
|
|
|
|
|
|
def RDVLI_XI : sve_int_read_vl_a<0b0, 0b11111, "rdvl">;
|
|
|
|
def ADDVL_XXI : sve_int_arith_vl<0b0, "addvl">;
|
|
|
|
def ADDPL_XXI : sve_int_arith_vl<0b1, "addpl">;
|
2017-11-08 00:58:13 +08:00
|
|
|
}
|