[LPM] Document the new helpers to make it easy to get consistent require

and preserve behavior from loop passes.

Differential Revision: http://reviews.llvm.org/D17443

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@261319 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chandler Carruth 2016-02-19 10:59:43 +00:00
parent eca46e623a
commit fe6345c537

View File

@ -525,6 +525,14 @@ interface. Implementing a loop pass is usually straightforward.
these methods should return ``true`` if they modified the program, or ``false``
if they didn't.
A ``LoopPass`` subclass which is intended to run as part of the main loop pass
pipeline needs to preserve all of the same *function* analyses that the other
loop passes in its pipeline require. To make that easier,
a ``getLoopAnalysisUsage`` function is provided by ``LoopUtils.h``. It can be
called within the subclass's ``getAnalysisUsage`` override to get consistent
and correct behavior. Analogously, ``INITIALIZE_PASS_DEPENDENCY(LoopPass)``
will initialize this set of function analyses.
The ``doInitialization(Loop *, LPPassManager &)`` method
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^