lebedev.ri requested changes to this revision.
lebedev.ri added a comment.
This revision now requires changes to proceed.

In D99152#2643821 <https://reviews.llvm.org/D99152#2643821>, @LuoYuanke wrote:

> @lebedev.ri, this patch is mainly for discussing the approach that Florian 
> proposed, so I didn't polish my code. Nevertheless your comments for 
> amx_cast.c is right.



> For __tile_loadd() is to load a 2d tile from memory. There is an extra 
> parameter stride. As I explain in llvm-dev, it load each row from memory to 
> tile register and then base += stride. So the data is not contiguous in 
> memory.

Aha. Finally. So i was right and you are hiding a bug.
Bitcast is a red herring.
You should not be producing a plain load, that is a miscompile already.
You should be either ideally producing LLVM IR's native tile load instruction 
(is there one? i thought),
or introduce `@llvm.x86.vector.amx.load` and produce it instead.

Full stop. I'm going to block any further AMX patches until this is addressed.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D99152

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to