llvm-project/polly
Tobias Grosser 52277852a4 RegisterPass: Disable Polly by default
We disable Polly by default and add a new option '-polly' that enables Polly.
This allows us to create an the alias

$ alias clang clang -Xclang -load -Xclang LLVMPolly.so

which loads Polly always into clang. It can now be enabled by running:

$ clang -O3 -mllvm -polly file.c

To enable it by default an alias pollycc can be create

$ alias pollycc clang -O3 -mllvm -polly

llvm-svn: 144917
2011-11-17 19:10:48 +00:00
..
autoconf configure: Add gmp_inc when checking for CLooG 2011-10-04 06:55:03 +00:00
cmake Add initial version of Polly 2011-04-29 06:27:02 +00:00
docs Add initial version of Polly 2011-04-29 06:27:02 +00:00
include JScop: Allow to update the context 2011-11-15 11:38:44 +00:00
lib RegisterPass: Disable Polly by default 2011-11-17 19:10:48 +00:00
test ScopInfo: Use names of simple parameters to name the isl parameter dimensions. 2011-11-15 11:38:55 +00:00
tools Add initial version of Polly 2011-04-29 06:27:02 +00:00
utils Remove pollycc 2011-10-23 20:59:47 +00:00
www RegisterPass: Disable Polly by default 2011-11-17 19:10:48 +00:00
CMakeLists.txt Buildsystem: Add -no-rtti 2011-06-30 19:50:04 +00:00
CREDITS.txt (Test commit for polly) 2011-07-16 13:30:03 +00:00
LICENSE.txt Add initial version of Polly 2011-04-29 06:27:02 +00:00
Makefile Add initial version of Polly 2011-04-29 06:27:02 +00:00
Makefile.common.in Add initial version of Polly 2011-04-29 06:27:02 +00:00
Makefile.config.in Buildsystem: Add -no-rtti 2011-06-30 19:50:04 +00:00
README Remove some empty lines 2011-10-04 06:56:36 +00:00
configure configure: Add gmp_inc when checking for CLooG 2011-10-04 06:55:03 +00:00

README

Polly - Polyhedral optimizations for LLVM

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.