| Polly - Polyhedral optimizations for LLVM | |
| ----------------------------------------- | |
| http://polly.llvm.org/ | |
| Polly uses a mathematical representation, the polyhedral model, to represent and | |
| transform loops and other control flow structures. Using an abstract | |
| representation it is possible to reason about transformations in a more general | |
| way and to use highly optimized linear programming libraries to figure out the | |
| optimal loop structure. These transformations can be used to do constant | |
| propagation through arrays, remove dead loop iterations, optimize loops for | |
| cache locality, optimize arrays, apply advanced automatic parallelization, drive | |
| vectorization, or they can be used to do software pipelining. |