[PATCH] D76132: [LoopUnrollAndJam] Changed safety checks to consider more than 2-levels loop nest.

Whitney Tsang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 13 07:28:40 PDT 2020


Whitney marked 3 inline comments as done.
Whitney added inline comments.


================
Comment at: llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp:285
                       OptimizationRemarkEmitter &ORE, int OptLevel) {
-  // Quick checks of the correct loop form
-  if (!L->isLoopSimplifyForm() || L->getSubLoops().size() != 1)
----------------
Not needed as they are already checked in `isSafeToUnrollAndJam`


================
Comment at: llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp:441
 
-  // The loop unroll and jam pass requires loops to be in simplified form, and also needs LCSSA.
-  // Since simplification may add new inner loops, it has to run before the
----------------
Just clang-format


================
Comment at: llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp:758
 
-  if (!L->isLoopSimplifyForm() || L->getSubLoops().size() != 1)
-    return false;
----------------
Now done in `isEligibleLoopForm`


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D76132/new/

https://reviews.llvm.org/D76132





More information about the llvm-commits mailing list