[all-commits] [llvm/llvm-project] 5abf12: Add a pass that specializes parallel loops for eas...

Benjamin Kramer via All-commits all-commits at lists.llvm.org
Fri Feb 28 10:49:27 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 5abf128d647df65d65e75fd26edb5268f30f6fe0
      https://github.com/llvm/llvm-project/commit/5abf128d647df65d65e75fd26edb5268f30f6fe0
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2020-02-28 (Fri, 28 Feb 2020)

  Changed paths:
    M mlir/include/mlir/Dialect/LoopOps/Passes.h
    M mlir/include/mlir/InitAllPasses.h
    M mlir/lib/Dialect/LoopOps/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/LoopOps/Transforms/ParallelLoopSpecialization.cpp
    A mlir/test/Dialect/Loops/parallel-loop-specialization.mlir

  Log Message:
  -----------
  Add a pass that specializes parallel loops for easier unrolling and vectorization

This matches loops with a affine.min upper bound, limiting the trip
count to a constant, and rewrites them into two loops, one with constant
upper bound and one with variable upper bound. The assumption is that
the constant upper bound loop will be unrolled and vectorized, which is
preferable if this is the hot path.

Differential Revision: https://reviews.llvm.org/D75240




More information about the All-commits mailing list