[PATCH] D122714: [X86][AMX] Materialize undef or zero value to tilezero

LuoYuanke via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 31 02:05:44 PDT 2022


LuoYuanke added inline comments.


================
Comment at: llvm/lib/Target/X86/X86LowerAMXType.cpp:81
+    return false;
+  switch (II->getIntrinsicID()) {
+  default:
----------------
xiangzhangllvm wrote:
> LuoYuanke wrote:
> > xiangzhangllvm wrote:
> > > Can we implement this with "Reverse thinking".
> > > for example:
> > > use x86_amx tile and exclude non-amx-instrinsics instruction (cast, copy, ..).
> > > In this way we may no need to care about here when we add new AMXs.
> > Most of intrinsic return x86_amx, an exception is tilestored64_internal which return void. Maybe add llvm.x86.amx prefix name for each AMX intrinsic, so that we can distinguish amx intrinsics by its name? 
> re-add prefix is ok but is big job.
> tilestored64_internal also use x86_amx operand.
> Because mainly amx intrinsics use/def x86_amx data.
> We can both check return's and operands' type, then exclude a few non-amx-instrinsics instructions.
Good idea. Updated the patch.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D122714



More information about the llvm-commits mailing list