[PATCH] D136088: [AArch64]SME2 instructions that use ZTO operand

Paul Walker via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 25 07:38:56 PDT 2022


paulwalker-arm added inline comments.


================
Comment at: llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td:408-414
+def ZERO_T : sme2_zero_zt<"zero">;
+
+def LDR_TX : sme2_spill_fill_vector<"ldr", 0b0>;
+def STR_TX : sme2_spill_fill_vector<"str", 0b1>;
+
+def MOVT_XTI : sme2_movt_zt_to_scalar<"movt">;
+def MOVT_TIX : sme2_movt_scalar_to_zt<"movt">;
----------------
CarolineConcatto wrote:
> paulwalker-arm wrote:
> > Can I suggest using `Zt` to represent `ZT0` within instruction names (e.g. `LUTI2_2ZZtZI`.  This fits with how we handle other multiple letter operands, for example `Pm` and `Pz` for predicate registers.
> We had a discussion about that, the problem is that it may be mistaken with stand-alone Z. 
> That is the reason we choose to go with T.
As mentioned we support `Pm`, `Pz` as well as `P`, which has worked fine for years now. My problem with `T` is what happens if we start having registers `t0-t#`.

So I cannot say I buy this answer but fair enough, if this is your preference then so be it.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D136088/new/

https://reviews.llvm.org/D136088



More information about the llvm-commits mailing list