aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenModule.cpp
diff options
context:
space:
mode:
authorMaheshRavishankar <ravishankarm@google.com>2020-12-17 14:42:40 -0800
committerMaheshRavishankar <ravishankarm@google.com>2020-12-17 14:45:51 -0800
commit118a71565462db41cab1dbb0349200627d6e8524 (patch)
tree6a6be9054db3c0b0bf69fa1179ffd8732092458a /clang/lib/CodeGen/CodeGenModule.cpp
parentde031216bf1755e61418a1515f2b0db0a9cfeddc (diff)
downloadllvm-118a71565462db41cab1dbb0349200627d6e8524.zip
llvm-118a71565462db41cab1dbb0349200627d6e8524.tar.gz
llvm-118a71565462db41cab1dbb0349200627d6e8524.tar.bz2
[mlir][Linalg] Define a linalg.init_tensor operation.
This operation is used to materialize a tensor of a particular shape. The shape could be specified as a mix of static and dynamic values. The use of this operation is to be an `init` tensor for Linalg structured operation on tensors where the bounds of the computation depends on the shape of the output of the linalg operation. The result of this operation will be used as the `init` tensor of such Linalg operations. To note, 1) The values in the tensor materialized is not used. Any operation to which this is an init tensor is expected to overwrite the entire tensor. 2) The tensor is materialized only for the shape of the output and to make the loop bounds depend only on operands of the structured operation. Based on (1) and (2) it is assumed that these operations eventually go away since they are only used in `dim` operations that can be canonicalized to make this operation dead. Such canonicalization are added here too. Differential Revision: https://reviews.llvm.org/D93374
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions