hanchenye-llvm-project/polly
Michael Kruse 21a24730d0 Update external project versions in README.txt
This was meant to committed in r240027, but was left behind because 
svn, in contrast to git, only commits the changes in the directory you
are currently in.

llvm-svn: 240034
2015-06-18 18:07:06 +00:00
..
autoconf Drop libpluto support 2015-03-30 17:54:01 +00:00
cmake Drop libpluto support 2015-03-30 17:54:01 +00:00
include Revert "Add NVIDIA vprintf printing to RuntimeDebugBuilder" 2015-06-08 16:24:49 +00:00
lib Update external project versions in README.txt 2015-06-18 18:07:06 +00:00
test Adjust to personality function change in 239940 2015-06-18 05:02:11 +00:00
tools Fix formatting issues in banner 2015-04-27 12:02:36 +00:00
utils Rename 'scattering' to 'schedule' 2015-04-21 11:37:25 +00:00
www [doc] Rename -polly-detect-only= to -polly-only-func= 2015-06-03 15:45:19 +00:00
.arcconfig Added arcanist (arc) unit test support 2014-09-08 19:30:09 +00:00
.arclint Added arcanist linters and cleaned errors and warnings 2014-08-18 00:40:13 +00:00
.gitattributes
.gitignore Add test/lit.site.cfg to .gitignore 2014-09-07 15:03:30 +00:00
CMakeLists.txt [cmake] Remove two unused include paths 2015-05-06 12:28:23 +00:00
CREDITS.txt Add myself to the credits 2014-08-10 03:37:29 +00:00
LICENSE.txt Update the copyright credits -- Happy new year 2014! 2014-01-01 08:27:31 +00:00
Makefile
Makefile.common.in
Makefile.config.in Drop libpluto support 2015-03-30 17:54:01 +00:00
README
configure Drop libpluto support 2015-03-30 17:54:01 +00:00

README

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.