[all-commits] [llvm/llvm-project] c3eb29: [mlir][scf] Considering defining operators of indi...

Hsiangkai Wang via All-commits all-commits at lists.llvm.org
Thu Feb 1 05:57:43 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c3eb2978a60b4e2e0cf9c8a8f9c51b48bd49477a
      https://github.com/llvm/llvm-project/commit/c3eb2978a60b4e2e0cf9c8a8f9c51b48bd49477a
  Author: Hsiangkai Wang <hsiangkai.wang at arm.com>
  Date:   2024-02-01 (Thu, 01 Feb 2024)

  Changed paths:
    M mlir/lib/Dialect/SCF/Transforms/ParallelLoopFusion.cpp
    M mlir/test/Dialect/SCF/parallel-loop-fusion.mlir

  Log Message:
  -----------
  [mlir][scf] Considering defining operators of indices when fusing scf::ParallelOp (#80145)

When checking the load indices of the second loop coincide with the
store indices of the first loop, it only considers the index values are
the same or not. However, there are some cases the index values defined
by other operators. In these cases, it will treat them as different even
the results of defining operators are the same.

We already check if the iteration space is the same in isFusionLegal().
When checking operands of defining operators, we only need to consider
the operands come from the same induction variables. If so, we know the
results of defining operators are the same.




More information about the All-commits mailing list