llvm-project/llvm/test/Transforms/LowerMatrixIntrinsics
Florian Hahn f13a59bcff [Matrix] Use TileInfo to create tiled loop nest for matrix multiply.
This patch uses the TileInfo introduced in D77550 to generate a loop
nest for tiled matrix multiplication, instead of generating the
unrolled code for the whole multiplication. This makes code-generation
more scalable for larger matrixes.

Initially loops are only used if both the number of rows and columns are
divisible by the tile size. Other cases will be added as follow-up.

Reviewers: anemet, Gerolf, hfinkel, andrew.w.kaylor, LuoYuanke, nicolasvasilache

Reviewed By: anemet

Differential Revision: https://reviews.llvm.org/D81308
2020-07-20 21:11:53 +01:00
..
bigger-expressions-double.ll [Matrix] Update load/store intrinsics. 2020-06-18 09:44:52 +01:00
const-gep.ll [Matrix] Use alignment info when lowering loads/stores. 2020-06-18 13:19:31 +01:00
load-align-volatile.ll [Matrix] Intrinsic descriptions 2020-07-14 19:58:16 +01:00
multiply-add-sub-double-row-major.ll [Matrix] Update load/store intrinsics. 2020-06-18 09:44:52 +01:00
multiply-double-contraction-fmf.ll [Matrix] Use fmuladd for matrix.multiply if allowed. 2019-12-23 14:49:14 +01:00
multiply-double-contraction.ll [Matrix] Use fmuladd for matrix.multiply if allowed. 2019-12-23 14:49:14 +01:00
multiply-double-row-major.ll [Matrix] Add option to use row-major matrix layout as default. 2020-04-06 10:00:56 +01:00
multiply-double.ll
multiply-float-contraction-fmf.ll [Matrix] Use fmuladd for matrix.multiply if allowed. 2019-12-23 14:49:14 +01:00
multiply-float-contraction.ll [Matrix] Use fmuladd for matrix.multiply if allowed. 2019-12-23 14:49:14 +01:00
multiply-float.ll
multiply-fused-loops.ll [Matrix] Use TileInfo to create tiled loop nest for matrix multiply. 2020-07-20 21:11:53 +01:00
multiply-fused-multiple-blocks.ll [Matrix] Add align info to some more loads/stores (NFC). 2020-06-16 20:42:59 +01:00
multiply-fused-volatile.ll [Matrix] Use TileInfo to create tiled loop nest for matrix multiply. 2020-07-20 21:11:53 +01:00
multiply-fused.ll [Matrix] Use TileInfo to create tiled loop nest for matrix multiply. 2020-07-20 21:11:53 +01:00
multiply-i32-row-major.ll [Matrix] Add option to use row-major matrix layout as default. 2020-04-06 10:00:56 +01:00
multiply-i32.ll
multiply-minimal.ll [Matrix] Add minimal lowering pass that only requires TTI. 2020-07-20 11:16:11 +01:00
propagate-backward.ll [Matrix] Update load/store intrinsics. 2020-06-18 09:44:52 +01:00
propagate-backwards-unsupported.ll [Matrix] Implement back-propagation of shape information. 2020-01-09 09:48:07 +00:00
propagate-forward.ll [Matrix] Update load/store intrinsics. 2020-06-18 09:44:52 +01:00
propagate-mixed-users.ll [Matrix] Update load/store intrinsics. 2020-06-18 09:44:52 +01:00
propagate-multiple-iterations.ll [Matrix] Update load/store intrinsics. 2020-06-18 09:44:52 +01:00
remarks-inlining.ll [Matrix] Intrinsic descriptions 2020-07-14 19:58:16 +01:00
remarks-shared-subtrees.ll [yaml][clang-tidy] Fix multiline YAML serialization 2020-07-09 02:41:58 -07:00
remarks.ll [Matrix] Intrinsic descriptions 2020-07-14 19:58:16 +01:00
store-align-volatile.ll [Matrix] Use alignment info when lowering loads/stores. 2020-06-18 13:19:31 +01:00
strided-load-double.ll [Matrix] Intrinsic descriptions 2020-07-14 19:58:16 +01:00
strided-load-float.ll [Matrix] Intrinsic descriptions 2020-07-14 19:58:16 +01:00
strided-load-i32.ll [Matrix] Intrinsic descriptions 2020-07-14 19:58:16 +01:00
strided-store-double.ll [Matrix] Intrinsic descriptions 2020-07-14 19:58:16 +01:00
strided-store-float.ll [Matrix] Update load/store intrinsics. 2020-06-18 09:44:52 +01:00
strided-store-i32.ll [Matrix] Update load/store intrinsics. 2020-06-18 09:44:52 +01:00
transpose-double-row-major.ll [llvm] [MatrixIntrinsics] Add row-major support for llvm.matrix.transpose 2020-05-28 12:13:32 -07:00
transpose-double.ll
transpose-float-row-major.ll [llvm] [MatrixIntrinsics] Add row-major support for llvm.matrix.transpose 2020-05-28 12:13:32 -07:00
transpose-float.ll
transpose-i32-row-major.ll [llvm] [MatrixIntrinsics] Add row-major support for llvm.matrix.transpose 2020-05-28 12:13:32 -07:00
transpose-i32.ll