Constrain a loop to run within a given iteration range.
Declared in <llvm/Transforms/Utils/LoopConstrainer.h>
class LoopConstrainer;
The algorithm this class implements is given a Loop and a range [Begin,] End). The algorithm then tries to break out a "main loop" out of the loop it is given in a way that the "main loop" runs with the induction variable in a subset of [Begin, End). The algorithm emits appropriate pre and post] loops to run any remaining iterations. The pre loop runs any iterations in which the induction variable is < Begin, and the post loop runs any iterations in which the induction variable is >= End.
| Name | Description |
|---|---|
SubRanges | Subranges that restrict the main loop's iteration space. |
| Name | Description |
|---|---|
LoopConstrainer [constructor] | Construct a constrainer for loop L with structure LS and range SR. |
run | Run the loop constraining algorithm. |