[mlir][Linalg] Conv {1,2,3}D ops defined with TC syntax
authorJakub Lichman <limo@google.com>
Fri, 31 Jul 2020 11:18:11 +0000 (13:18 +0200)
committerAlex Zinenko <zinenko@google.com>
Fri, 31 Jul 2020 11:20:17 +0000 (13:20 +0200)
commiteef1bfb2d219191cee16ee24efbf2d204488696c
tree3664f2140bfe6547a56405bc7653ab832bc668cb
parent03116a9f8c2fc98577e153083aaf9b6a701ab8f9
[mlir][Linalg] Conv {1,2,3}D ops defined with TC syntax

Replaced definition of named ND ConvOps with tensor comprehension
syntax which reduces boilerplate code significantly. Furthermore,
new ops to support TF convolutions added (without strides and dilations).

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D84628
mlir/include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOpsSpec.tc
mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.h
mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
mlir/lib/Conversion/LinalgToStandard/LinalgToStandard.cpp
mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
mlir/lib/Dialect/Linalg/Transforms/Loops.cpp
mlir/test/Dialect/Linalg/invalid.mlir
mlir/test/Dialect/Linalg/loops.mlir