[PATCH] D41953: [LoopUnroll] Unroll and Jam

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 20 09:56:14 PDT 2018


dmgreen updated this revision to Diff 143328.
dmgreen added a comment.
Herald added a reviewer: javed.absar.

Address feedback and added some pragma tests, with some related fixes. Split out some parts into other commits.

I'm still trying to work on making the analysis more accurate so this works on more loops. It would be good if LAA could be made to work here (to get versioning too) but it looks very vectoriser shaped and doesn't handle outer loop quite yet. DA as used here might be the only way, but may need to learn a few more tricks (or may need some fixes).


https://reviews.llvm.org/D41953

Files:
  include/llvm-c/Transforms/Scalar.h
  include/llvm/Analysis/TargetTransformInfo.h
  include/llvm/InitializePasses.h
  include/llvm/LinkAllPasses.h
  include/llvm/Transforms/Scalar.h
  include/llvm/Transforms/Scalar/LoopUnrollAndJamPass.h
  include/llvm/Transforms/Utils/UnrollLoop.h
  lib/Passes/PassBuilder.cpp
  lib/Passes/PassRegistry.def
  lib/Target/ARM/ARMTargetTransformInfo.cpp
  lib/Transforms/IPO/PassManagerBuilder.cpp
  lib/Transforms/Scalar/CMakeLists.txt
  lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp
  lib/Transforms/Scalar/LoopUnrollPass.cpp
  lib/Transforms/Scalar/Scalar.cpp
  lib/Transforms/Utils/CMakeLists.txt
  lib/Transforms/Utils/LoopUnroll.cpp
  lib/Transforms/Utils/LoopUnrollAndJam.cpp
  test/Transforms/LoopUnrollAndJam/disable.ll
  test/Transforms/LoopUnrollAndJam/pragma.ll
  test/Transforms/LoopUnrollAndJam/unprofitable.ll
  test/Transforms/LoopUnrollAndJam/unroll-and-jam.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D41953.143328.patch
Type: text/x-patch
Size: 143909 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180420/37420f84/attachment-0001.bin>


More information about the llvm-commits mailing list