Add support for multi-level value mapping to DialectConversion.
authorRiver Riddle <riverriddle@google.com>
Mon, 16 Sep 2019 17:37:48 +0000 (10:37 -0700)
committerA. Unique TensorFlower <gardener@tensorflow.org>
Mon, 16 Sep 2019 17:38:19 +0000 (10:38 -0700)
commit9619ba10d47a11b968efe835afb040be1c8c63cc
tree93fa7d7440ccfbb4f6862d3b8e5e51a7553fa265
parent6934a337f099f4ccb22625e1bf440b3356f8c09f
Add support for multi-level value mapping to DialectConversion.

When performing A->B->C conversion, an operation may still refer to an operand of A. This makes it necessary to unmap through multiple levels of replacement for a specific value.

PiperOrigin-RevId: 269367859
mlir/lib/Transforms/DialectConversion.cpp
mlir/test/Transforms/test-legalizer-analysis.mlir
mlir/test/Transforms/test-legalizer-full.mlir [new file with mode: 0644]
mlir/test/lib/TestDialect/TestOps.td
mlir/test/lib/TestDialect/TestPatterns.cpp