[PATCH] D74989: [LoopTerminology] Loop Simplify Form

Stefanos Baziotis via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 21 15:16:21 PST 2020


baziotis created this revision.
baziotis added reviewers: Meinersbur, kbarton, etiotto.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

Information take from the Writing Loop Optimizations <https://youtu.be/3pRhvQi7Z10?t=481> video and the LoopSimplify.h <http://llvm.org/doxygen/LoopSimplify_8h_source.html>


https://reviews.llvm.org/D74989

Files:
  llvm/docs/LoopTerminology.rst


Index: llvm/docs/LoopTerminology.rst
===================================================================
--- llvm/docs/LoopTerminology.rst
+++ llvm/docs/LoopTerminology.rst
@@ -141,7 +141,15 @@
 Loop Simplify Form
 ==================
 
-TBD
+The Loop Simplify Form is a canonical form that makes
+several analyses and transformations simpler and more effective.
+For a loop to be in Loop Simplify Form, it must have:
+
+* A preheader.
+* A latch which must also be the only backedge.
+* Dedicated exists. That is, no exit block for the loop
+  has a predecessor that is outside the loop. This implies
+  that all exit blocks are dominated by the loop header.
 
 
 Loop Closed SSA (LCSSA)


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D74989.246007.patch
Type: text/x-patch
Size: 688 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200221/341b9ff8/attachment-0001.bin>


More information about the llvm-commits mailing list