[PATCH] D81472: [Matrix] Update load/store intrinsics.

Adam Nemet via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 15 10:23:36 PDT 2020


anemet added a comment.

Is there a test for passing alignment?



================
Comment at: llvm/include/llvm/IR/Intrinsics.td:1439-1450
+def int_matrix_transpose
+  : Intrinsic<[llvm_anyvector_ty],
+              [LLVMMatchType<0>, llvm_i32_ty, llvm_i32_ty],
+              [IntrNoMem, IntrSpeculatable, IntrWillReturn, ImmArg<ArgIndex<1>>,
+               ImmArg<ArgIndex<2>>]>;
+
+def int_matrix_multiply
----------------
If this is only reformatting, I would leave that to a separate patch.


================
Comment at: llvm/include/llvm/IR/Intrinsics.td:1465
+               WriteOnly<ArgIndex<1>>, ImmArg<ArgIndex<3>>,
+               ImmArg<ArgIndex<4>>, ImmArg<ArgIndex<5>>]>;
 
----------------
sstefan1 wrote:
> jdoerfert wrote:
> > fhahn wrote:
> > > jdoerfert wrote:
> > > > [Drive by][unrelated] I think we should add `nocapture` to the ptr argument and `nosync` to all of them (until we have the white/blacklist for intrinsics with sensible defaults).
> > > Thanks for pointing that out. There are just too many attributes to keep track of. I wish we had some kind of attribute 'group' to say: just reads/write from the pointer, no capture and other stuff
> > We (@sstefan1) proposed a whitelist and blacklist approach for intrinsics before. Hasn't gone anywhere yet. For the OpenMP runtime functions we actually have such attribute groups. Either way is better than what we do so far.
> I will try to get back to that soon.
Has this been addressed?


================
Comment at: llvm/include/llvm/IR/MatrixBuilder.h:62
+                                  Value *Stride, bool IsVolatile, unsigned Rows,
+                                  unsigned Columns, const Twine &Name = "") {
 
----------------
unsigned -> uint64_t?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D81472





More information about the llvm-commits mailing list