This pass transforms loops that contain a conditional branch with induction variable. For example, it transforms left code to right code:
Synopsis
Declared in <llvm/Transforms/Scalar/LoopBoundSplit.h>
class LoopBoundSplitPass
: public OptionalPassInfoMixin<LoopBoundSplitPass>
Description
newbound = min(n, c) while (iv < n) { while(iv < newbound) { A A if (iv < c) B B C C } if (iv != n) { while (iv < n) { A C } }
Base Classes
Name |
Description |
A CRTP mix‐in for passes that can be skipped. |
Member Functions
Name |
Description |
Run loop bound splitting over the loop. |
Static Member Functions
Name |
Description |
Return false; optional passes may be skipped. |
Created with MrDocs