summaryrefslogtreecommitdiffstats
path: root/polly/lib/Transform/CodePreparation.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Adapt to LLVM head, againHongbin Zheng2016-02-251-1/+1
| | | | llvm-svn: 261905
* Revert "Adapt to LLVM head. NFC"Hongbin Zheng2016-02-251-1/+1
| | | | | | This reverts commit 4d3753b9646a69c00d234ccd6e91dc3d0ea5d643. llvm-svn: 261892
* Adapt to LLVM head. NFCHongbin Zheng2016-02-251-1/+1
| | | | llvm-svn: 261886
* [NFC] Move helper functions to ScopHelperJohannes Doerfert2015-10-091-1/+0
| | | | | | | | Helper functions in the BlockGenerators.h/cpp introduce dependences from the frontend to the backend of Polly. As they are used in ScopDetection, ScopInfo, etc. we move them to the ScopHelper file. llvm-svn: 249919
* Fix Polly after SCEV port to new pass managerTobias Grosser2015-08-171-2/+2
| | | | | | This fixes compilation after LLVM commit r245193. llvm-svn: 245211
* Remove code for scalar and PHI to array translationTobias Grosser2015-06-261-133/+4
| | | | | | | | | | | | | | | | This removes old code that has been disabled since several weeks and was hidden behind the flags -disable-polly-intra-scop-scalar-to-array=false and -polly-model-phi-nodes=false. Earlier, Polly used to translate scalars and PHI nodes to single element arrays, as this avoided the need for their special handling in Polly. With Johannes' patches adding native support for such scalar references to Polly, this code is not needed any more. After this commit both -polly-prepare and -polly-independent are now mostly no-ops. Only a couple of simple transformations still remain, but they are scheduled for removal too. Thanks again to Johannes Doerfert for his nice work in making all this code obsolete. llvm-svn: 240766
* Sort include directivesTobias Grosser2015-05-091-1/+1
| | | | | | | | | | Upcoming revisions of isl require us to include header files explicitly, which have previously been already transitively included. Before we add them, we sort the existing includes. Thanks to Chandler for sort_includes.py. A simple, but very convenient script. llvm-svn: 236930
* Do some preparation even with scalar and phi modeling enabledJohannes Doerfert2015-02-271-4/+2
| | | | llvm-svn: 230790
* Fix formattingTobias Grosser2015-02-161-2/+1
| | | | llvm-svn: 229360
* Update Polly for the removal of LLVM_DELETED_FUNCTION now that '= delete' ↵David Blaikie2015-02-151-2/+2
| | | | | | works on all supported compilers (MSVC2012 compat has been dropped) llvm-svn: 229344
* Model PHI nodes without demoting themJohannes Doerfert2015-02-061-0/+4
| | | | | | | | | | This allows us to model PHI nodes in the polyhedral description without demoting them. The modeling however will result in the same accesses as the demotion would have introduced. Differential Revision: http://reviews.llvm.org/D7415 llvm-svn: 228433
* [PM] Update Polly following LLVM r226373 which refactors LoopInfo inChandler Carruth2015-01-171-4/+4
| | | | | | preparation for the new pass manager. llvm-svn: 226374
* Remove -polly-codegen-scev option and related codeTobias Grosser2014-11-301-28/+7
| | | | | | | | SCEV based code generation has been the default for two weeks after having been tested for a long time. We now drop the support the non-scev-based code generation. llvm-svn: 222978
* Added arcanist linters and cleaned errors and warningsJohannes Doerfert2014-08-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Arcanist (arc) will now always run linters before uploading any new commit to Phabricator. All errors/warnings (or their absence) will be shown in the web interface together with a explanation by the commiter (arcanist will ask the commiter if the build was not clean). The linters include: - clang-format - spelling check - permissions check (aka. chmod) - filename check - merge conflict marker check Note, that their scope is sometimes limited (see .arclint for details). This commit also fixes all errors and warnings these linters reported, namely: - spelling mistakes and typos - executable permissions for various text files Differential Revision: http://reviews.llvm.org/D4916 llvm-svn: 215871
* Update for RegionInfo changes.Matt Arsenault2014-07-191-1/+2
| | | | | | | Mostly related to missing includes and renaming of the pass to RegionInfoPass. llvm-svn: 213457
* Delete trivial PHI nodes (aka stack slot sharing)Tobias Grosser2014-04-011-18/+83
| | | | | | | | | | | | | | During code preperation trivial PHI nodes (mainly introduced by lcssa) are deleted to decrease the number of introduced allocas (==> dependences). However simply replacing them by their only incoming value would cause the independent block pass to introduce new allocas. To prevent this we try to share stack slots during code preperarion, hence to reuse a already created alloca 'to demote' the trivial PHI node. This works if we know that the value stored in this alloca will be the incoming value of the trivial PHI at the end of the predecessor block of this trivial PHI. Contributed-by: Johannes Doerfert <doerfert@cs.uni-saarland.de> llvm-svn: 205320
* Move transformations into own directoryAndreas Simbuerger2014-03-111-0/+182
Move all transformations into their own directory. CMakeLists are adjusted accordingly. llvm-svn: 203607
OpenPOWER on IntegriCloud