xref: /llvm-project/polly/README (revision 72d25399379c7195d8a3d2f9f497ac68252483e9)
175805378STobias GrosserPolly - Polyhedral optimizations for LLVM
2*1646a6ecSSameer Sahasrabuddhe-----------------------------------------
3*1646a6ecSSameer Sahasrabuddhehttp://polly.llvm.org/
475805378STobias Grosser
575805378STobias GrosserPolly uses a mathematical representation, the polyhedral model, to represent and
675805378STobias Grossertransform loops and other control flow structures. Using an abstract
775805378STobias Grosserrepresentation it is possible to reason about transformations in a more general
875805378STobias Grosserway and to use highly optimized linear programming libraries to figure out the
975805378STobias Grosseroptimal loop structure. These transformations can be used to do constant
1075805378STobias Grosserpropagation through arrays, remove dead loop iterations, optimize loops for
1175805378STobias Grossercache locality, optimize arrays, apply advanced automatic parallelization, drive
1275805378STobias Grosservectorization, or they can be used to do software pipelining.
13