hanchenye-llvm-project/polly
Tobias Grosser 16c4403a91 Make non-affine statement names isl compatible
Named isl sets can generally have any name if they remain within Polly, but only
certain strings can be parsed by isl. The new names we create ensure that we
can always copy-past isl strings from Polly to other isl tools, e.g. for
debugging.

llvm-svn: 241787
2015-07-09 07:31:45 +00:00
..
autoconf Enable ISL's small integer optimization 2015-06-25 20:47:35 +00:00
cmake [Polly] Add -std=c99 flag only to C source files 2015-06-29 19:57:59 +00:00
include Print thread-identifiers in GPU debug output 2015-07-06 15:36:16 +00:00
lib Make non-affine statement names isl compatible 2015-07-09 07:31:45 +00:00
test Make non-affine statement names isl compatible 2015-07-09 07:31:45 +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
.arclint
.gitattributes
.gitignore Add git patch files to .gitignore 2015-06-23 20:55:01 +00:00
CMakeLists.txt Fix autotools build 2015-06-25 16:50:13 +00:00
CREDITS.txt
LICENSE.txt
Makefile
Makefile.common.in
Makefile.config.in Fix autotools build 2015-06-25 16:50:13 +00:00
README
configure Enable ISL's small integer optimization 2015-06-25 20:47:35 +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.