[PATCH] D136077: [AArch64]SME2 Outer Product and Accumulate instructions

Caroline via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 28 07:44:18 PDT 2022


CarolineConcatto added inline comments.


================
Comment at: llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td:554
 
+defm BMOPA_TPPZZ : sme2_bfp_mopx_tile<"bmopa", 0b0>;
+defm BMOPS_TPPZZ : sme2_bfp_mopx_tile<"bmops", 0b1>;
----------------
paulwalker-arm wrote:
> Should this be `BMOPA_MPPZZ_S` because it uses ZA not ZT0?
Now, I am not sure if we should do the same for BMOPA.
In sme1 BFMOPA do not have a size, but FMOPA_MPPZZ has(but because it has a D and S size)



================
Comment at: llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td:557
+
+defm SMOPA_TPPZZ : sme2_int_mopx_tile<"smopa", 0b00>;
+defm SMOPS_TPPZZ : sme2_int_mopx_tile<"smops", 0b01>;
----------------
paulwalker-arm wrote:
> The equivalent SME1 instruction is `SMOPA_MPPZZ_S` so I'd expect this to be named similar but much like with the DOT instructions you'll need to rename the original to reflect the difference between 4way and 2way.  So the original becomes `SMOPA_MPPZZ_BtoS and SMOPA_MPPZZ_HtoD` and this new one becomes `SMOPA_MPPZZ_HtoS`.  Do you agree?
I had changed for SME1, but these instructions name are in use in AArch64ISelLowering.
So I did not changed for sme1, but did for sme2.
TBH I don't know what is more consistent, changing or not changing the names for sme2.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D136077



More information about the llvm-commits mailing list