summaryrefslogtreecommitdiffstats
path: root/polly/lib/CodeGen/CodeGeneration.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Allow polly ask bb-vectorizer to vectorize the loop body.Hongbin Zheng2012-05-061-8/+1
| | | | llvm-svn: 156254
* Refactor: Move the code generation related header files to ↵Hongbin Zheng2012-04-251-3/+3
| | | | | | include/polly/CodeGen. llvm-svn: 155547
* Refactor: Move the declaration of the BlockGenerator/VectorBlockGeneratorHongbin Zheng2012-04-251-824/+2
| | | | | | to standalone header and source files. llvm-svn: 155546
* Refactor: Pass the argument 'IRBuilder' and 'AfterBlock' of function ↵Hongbin Zheng2012-04-231-1/+1
| | | | | | | | 'createLoop' by reference, so that we do not need to type an extra '&' operator when calling the function. llvm-svn: 155349
* CodeGen: Generate scalar code if vector instructions cannot be generatedTobias Grosser2012-04-121-7/+68
| | | | | | | | This fixes two crashes that appeared in case of: - A load of a non vectorizable type (e.g. float**) - An instruction that is not vectorizable (e.g. call) llvm-svn: 154586
* CodeGen: Allow Polly to do 'grouped unrolling', but no vector generation.Tobias Grosser2012-04-071-0/+14
| | | | | | | | | | Grouped unrolling means that we unroll a loop such that the different instances of a certain statement are scheduled right after each other, but we do not generate any vector code. The idea here is that we can schedule the bb vectorizer right afterwards and use it heuristics to decide when vectorization should be performed. llvm-svn: 154251
* CodeGen: Remove unused declarationTobias Grosser2012-04-031-2/+0
| | | | llvm-svn: 153954
* CodeGen: Recreate old ivs with the original typeTobias Grosser2012-04-031-1/+2
| | | | | | | | | | | | | | | To avoid overflows we still use a larger type (i64) while calculating the value of the old ivs. However, we truncate the result to the type of the old iv when providing it to the new code. A corresponding test case is added to the polly test suite. Also, a failing test case is fixed. This fixes PR12311. Contributed by: Tsingray Liu <tsingrayliu@gmail.com> llvm-svn: 153952
* CodeGen: Some style improvementsTobias Grosser2012-04-021-9/+10
| | | | llvm-svn: 153871
* CodeGen: Remove unused variableTobias Grosser2012-04-011-5/+5
| | | | llvm-svn: 153840
* CodeGen: Allow function parameters to be rewritten in getNewValue()Tobias Grosser2012-04-011-11/+15
| | | | | | | | | | | | | When deriving new values for the statements of a SCoP, we assumed that parameter values are constant within the SCoP and consquently do not need to be rewritten. For OpenMP code generation this assumption is wrong, as such values are not available in the OpenMP subfunction and consequently also may need to be rewritten. Committed with some changes. Contributed-By: Johannes Doerfert <s9jodoer@stud.uni-saarland.de> llvm-svn: 153838
* Move the CodeGeneration.cpp to the CodeGen folder and update the build system.Hongbin Zheng2012-03-301-0/+1689
Patched by Tsingray. llvm-svn: 153736
OpenPOWER on IntegriCloud