git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@367487
91177308-0d34-0410-b5e6-
96231b3b80d8
+.. _loop-terminology:
===========================================
LLVM Loop Terminology (and Canonical Forms)
===========================================
The ``LoopPass`` class
----------------------
-All ``LoopPass`` execute on each loop in the function independent of all of the
-other loops in the function. ``LoopPass`` processes loops in loop nest order
-such that outer most loop is processed last.
+All ``LoopPass`` execute on each :ref:`loop <loop-terminology>` in the function
+independent of all of the other loops in the function. ``LoopPass`` processes
+loops in loop nest order such that outer most loop is processed last.
``LoopPass`` subclasses are allowed to update loop nest using ``LPPassManager``
interface. Implementing a loop pass is usually straightforward.