This document describes a framework in MLIR in which to perform operation conversions between, and within dialects. This framework allows for transforming illegal operations to those supported by a provided conversion target, via a set of pattern-based operation rewriting patterns. The dialect conversion framework consists of the following components: A Conversion Target A set of Rewrite Patterns A Type Converter (Optional) Modes of Conversion Conversion Target Recursive Legality Rewrite Patt...