MLIR — Canonicalizers and Declarative Rewrite Patterns