hanchenye-llvm-project/polly
Tobias Grosser 4ba60fe9eb ScheduleOptimizer: Fix prevectorization.
In case we are at the innermost band, we try to prepare for vectorization. This
means, we look for the innermost parallel loop and strip mine this loop to the
innermost level using a strip-mine factor corresponding to the number of vector
iterations.

For whatever reason, the code that implemented this feature was broken. We now
added a comment, a test case and obviously also the right code.

llvm-svn: 203544
2014-03-11 06:27:36 +00:00
..
autoconf GMP is only required for CLooG 2014-02-22 02:15:39 +00:00
cmake cmake: build monolithic libLLVMPollyLib.dylib 2014-03-03 19:30:19 +00:00
docs
include Ported scoplib to use isl_val * instead of isl_int 2014-03-10 22:03:30 +00:00
lib ScheduleOptimizer: Fix prevectorization. 2014-03-11 06:27:36 +00:00
test ScheduleOptimizer: Fix prevectorization. 2014-03-11 06:27:36 +00:00
tools Update the copyright credits -- Happy new year 2014! 2014-01-01 08:27:31 +00:00
utils Update CLooG and some test cases 2014-03-10 17:31:22 +00:00
www www: Fix link to Pluto 2014-03-10 12:28:20 +00:00
.gitattributes gitattributes: .png and .txt are no text files 2013-07-28 09:05:20 +00:00
CMakeLists.txt Set CMAKE_INSTALL_RPATH_USE_LINK_PATH to true. 2014-02-22 13:28:31 +00:00
CREDITS.txt
LICENSE.txt Update the copyright credits -- Happy new year 2014! 2014-01-01 08:27:31 +00:00
Makefile Revert "Fix a bug introduced by r153739: We are not able to provide the correct" 2012-04-11 07:43:13 +00:00
Makefile.common.in 'chmod -x' on files that do not need the executable bits 2012-12-29 15:09:03 +00:00
Makefile.config.in 'chmod -x' on files that do not need the executable bits 2012-12-29 15:09:03 +00:00
README Trivial change to the README, mainly to test commit access. 2012-10-09 04:59:42 +00:00
configure GMP is only required for CLooG 2014-02-22 02:15:39 +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.