[all-commits] [llvm/llvm-project] 644892: [Polly] Add greedy fusion algorithm.

Michael Kruse via All-commits all-commits at lists.llvm.org
Fri Oct 8 18:35:30 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 64489255be4903dc8683aff8dade315461a0a397
      https://github.com/llvm/llvm-project/commit/64489255be4903dc8683aff8dade315461a0a397
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2021-10-08 (Fri, 08 Oct 2021)

  Changed paths:
    M polly/docs/ReleaseNotes.rst
    M polly/include/polly/ScheduleTreeTransform.h
    M polly/include/polly/Support/GICHelper.h
    M polly/lib/Support/GICHelper.cpp
    M polly/lib/Transform/ScheduleOptimizer.cpp
    M polly/lib/Transform/ScheduleTreeTransform.cpp
    A polly/test/ScheduleOptimizer/GreedyFuse/fuse-double.ll
    A polly/test/ScheduleOptimizer/GreedyFuse/fuse-except-first.ll
    A polly/test/ScheduleOptimizer/GreedyFuse/fuse-except-third.ll
    A polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner-carried.ll
    A polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner-third.ll
    A polly/test/ScheduleOptimizer/GreedyFuse/fuse-inner.ll
    A polly/test/ScheduleOptimizer/GreedyFuse/fuse-simple.ll
    A polly/test/ScheduleOptimizer/GreedyFuse/nofuse-simple.ll
    A polly/test/ScheduleOptimizer/GreedyFuse/nofuse-with-middle.ll

  Log Message:
  -----------
  [Polly] Add greedy fusion algorithm.

When the option -polly-loopfusion-greedy is set, the ScheduleOptimizer
tries to aggressively fuse any band it can and does not violate any
dependences.

As part if the implementation, the functionalty for copying a band
into an new schedule was extracted out of the ScheduleTreeRewriter.




More information about the All-commits mailing list