[mlir][Linalg] Adding support for linalg_matmul with tensors.
authorNicolas Vasilache <ntv@google.com>
Fri, 31 Jan 2020 19:42:34 +0000 (14:42 -0500)
committerNicolas Vasilache <ntv@google.com>
Fri, 31 Jan 2020 21:02:21 +0000 (16:02 -0500)
commitf9fa9e1f0e9508abb7b11b161a4c1509a6933d2b
tree90077663ada3615b34438fe74a2422f305a4c412
parent83a7a4aaad83443f7b22bbc842bb67d4161a9a3f
[mlir][Linalg] Adding support for linalg_matmul with tensors.

Summary:
This revision provides 2 versions of matmul with tensors to account for the differences in buffer vs value semantics:
1. `C(i, j) = sum_{r_k} A(i, r_k) * B(r_k, j)`
2. `D(i, j) = C(i, j) + sum_{r_k} A(i, r_k) * B(r_k, j)`

Reviewers: ftynse

Subscribers: mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, arpith-jacob, mgester, lucyrfox, aartbik, liufengdb, Joonsoo, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D73796
mlir/include/mlir/Dialect/Linalg/EDSC/Builders.h
mlir/lib/Dialect/Linalg/EDSC/Builders.cpp
mlir/test/EDSC/builder-api-test.cpp