[MLIR] Add idempotent trait folding
authorahmedsabie <ahmed13579@gmail.com>
Fri, 16 Oct 2020 15:49:38 +0000 (15:49 +0000)
committerAndy Ly <lyandy@google.com>
Fri, 16 Oct 2020 15:51:04 +0000 (15:51 +0000)
commit7dff6b818b1cdd52fbc99f6256760d6eb02a7622
tree757865dc48c36b24b96725a1ec2fd772bd20bd10
parent0a7cd99a702595ccf73c957be0127af9f25fb9a2
[MLIR] Add idempotent trait folding

This trait simply adds a fold of f(f(x)) = f(x) when an operation is labelled as idempotent

Reviewed By: rriddle, andyly

Differential Revision: https://reviews.llvm.org/D89421
mlir/include/mlir/IR/OpBase.td
mlir/include/mlir/IR/OpDefinition.h
mlir/lib/IR/Operation.cpp
mlir/test/lib/Dialect/Test/TestOps.td
mlir/test/mlir-tblgen/trait.mlir