Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[CodeGen] Support transform.oneflow.apply_patterns Op in MLIR (#10255)
iree中通过 transform.iree.apply_patterns 这个op灵活的将预定义的一些pattern在transform dialect的变换环节作用于指定的op。如,在transform.sequeue中做完tiling之后,做一些规范化的操作: ```mlir transform.structured.tile_to_forall_op %parallel_linalg_ops num_threads [1, 4, 32] ( mapping = [#gpu.thread<z>, #gpu.thread<y>, #gpu.thread<x>] ) // Canonicalizations. transform.iree.apply_patterns %variant_op { canonicalization, tiling_canonicalization, licm, cse } : (!pdl.operation) -> () ``` 该pr中在oneflow::transform_dialect命名空间引入类似的op,并完成一个canonicalization的支持。具体实例见:https://github.com/Oneflow-Inc/oneflow/pull/10255/files#diff-a36168c1a81d37cf7f56ff09c02af22e9e3bcc39902ccdb8c7f21805d309e72fR1 除此之外,该pr中对transform dialect interpret等从llvm主仓库迁移过来的设施进行剪裁和重构。 --------- Co-authored-by: oneflow-ci-bot <ci-bot@oneflow.org>
- Loading branch information