# Polly: Documentation

- ## The architecture

- ## Load Polly into clang and automatically run it at -O3

  This example is for users of Polly. It explains how you can load Polly into clang such that the polyhedral optimzations are available during normal compilation. Using Polly is not more complicated than just adding a new flag to CFLAGS.

- ## Use Polly in dragonegg

  How to load and use Polly within dragonegg.

- ## Execute the individual Polly passes manually

  This example presents the individual passes that are involved when optimizing code with Polly. We show how to execute them individually and explain for each which analysis is performed or what transformation is applied. In this example the polyhedral transformation is user-provided to show how much performance improvement can be expected by an optimal automatic optimizer.

- ## The LLVM passes available in Polly

- ## Polly - Memory access optimizations