summaryrefslogtreecommitdiffstats
path: root/polly/lib/External/isl/isl_polynomial.c
Commit message (Collapse)AuthorAgeFilesLines
* Update isl to isl-0.19-185-g8e9f55ceTobias Grosser2018-06-111-6/+7
| | | | | | This is mainly a maintenance update. llvm-svn: 334406
* Update isl to isl-0.19-173-g77fe2538Tobias Grosser2018-05-311-5/+1
| | | | | | | | | Besides other changes, this update introduces functions to translate a maps and sets into lists of their elements. These lists are useful as we can define iterators for lists, which allow us to replace many uses of foreach. llvm-svn: 333621
* Update isl to isl-0.19-152-g437e6ab0Tobias Grosser2018-05-231-37/+5
| | | | | | | | Besides normal updates this change also contains a bug-fix to in isl_coalesce which broke the AOSP buildbot. Thanks to Michael Kruse for reporting this bug and Sven Verdoolage for fixing this bug. llvm-svn: 333118
* Update isl to isl-0.19-107-gc4fe33d8Tobias Grosser2018-04-211-19/+3
| | | | | | This is a regular maintenance update. llvm-svn: 330496
* Update isl to isl-0.18-1047-g4a20ef8Tobias Grosser2018-02-201-8/+0
| | | | | | | | | | | | | | | | | | This update: - Removes several deprecated functions (e.g., isl_band). - Improves the pretty-printing of sets by detecting modulos and "false" equalities. - Minor improvements to coalescing and increased robustness of the isl scheduler. This update does not yet include isl commit isl-0.18-90-gd00cb45 (isl_pw_*_alloc: add missing check for compatible spaces, Wed Sep 6 12:18:04 2017 +0200), as this additional check is too tight and unfortunately causes two test case failures in Polly. A patch has been submitted to isl and will be included in the next isl update for Polly. llvm-svn: 325557
* Update to isl-0.18-410-gc253447Tobias Grosser2017-04-031-4/+9
| | | | | | | This is a regular maintenance update to ensure latest isl changes are tested in our buildbots. llvm-svn: 299350
* Update to isl-0.18-402-ga30c537Tobias Grosser2017-03-231-3/+9
| | | | | | This is a regular maintenance update. llvm-svn: 298595
* Update to isl-0.18-369-g5e613c6Tobias Grosser2017-03-141-1/+6
| | | | | | This is a regular maintenance update. llvm-svn: 297708
* Update isl to isl-0.18-282-g12465a5Tobias Grosser2017-02-231-5/+5
| | | | | | | Besides a variety of smaller cleanups, this update also contains a correctness fix to isl coalesce which resolves a crash in Polly. llvm-svn: 295966
* Updated isl to isl-0.18-254-g6bc184dTobias Grosser2017-02-171-14/+26
| | | | | | | This update includes a couple more coalescing changes as well as a large number of isl-internal code cleanups (dead assigments, ...). llvm-svn: 295419
* Update to isl-0.17.1-314-g3106e8dMichael Kruse2016-12-061-30/+104
| | | | | | | | | | | | This version includes an update for imath (isl-0.17.1-49-g2f1c129). It fixes the compilation under windows, which does not know ssize_t. In addition, isl-0.17.1-288-g0500299 changed the way isl_test finds the source directory. It now generates a file isl_srcdir.c at configure-time, containing the source path, to not require setting the environment variable "srcdir" at test-time. The cmake build system had to be modified to also generate that file. llvm-svn: 288811
* Update to isl-0.16.1-145-g243bf7cTobias Grosser2016-03-251-0/+80
| | | | | | | Just an import to keep track with the latest version of isl. We are not looking for specific features. llvm-svn: 264452
* Update isl to isl-0.15-86-g595055eTobias Grosser2015-07-241-18/+6
| | | | | | | Besides a couple of cleanups and refactorings in isl, this change set fixes a couple of bugs in isl, that can cause issues during code generation. llvm-svn: 243110
* Update ISL to isl-0.15-61-gcea776fMichael Kruse2015-07-211-0/+2
| | | | | | | The motivation is to fix a wrong use of the inline qualifier. This fixes the Polly build using Visual Studio 2015 RC. llvm-svn: 242780
* Update ISL to isl-0.15-3-g532568aMichael Kruse2015-06-181-8/+9
| | | | | | | | | | | | | | This version adds small integer optimization, but is not active by default. It will be enabled in a later commit. The schedule-fuse=min/max option has been replaced by the serialize-sccs option. Adapting Polly was necessary, but retaining the name polly-opt-fusion=min/max. Differential Revision: http://reviews.llvm.org/D10505 Reviewers: grosser llvm-svn: 240027
* Update isl to 93b8e43dTobias Grosser2015-05-281-42/+42
| | | | | | | This update brings mostly interface cleanups, but also fixes two bugs in imath (a memory leak, some undefined behavior). llvm-svn: 238422
* Update isl to 6be6768eTobias Grosser2015-05-181-0/+7
| | | | | | | | Besides a couple of interface cleanups, this change also contains a performance optimization of isl_mat_product that should give us up to almost 6% compiletime reduction. llvm-svn: 237616
* Update to isl 99d53692baTobias Grosser2015-02-161-28/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit imports the latest isl version into lib/External/isl. The changes relavant for Polly are: 1) Schedule trees [1] have been introduced as a more structured way to describe schedules. Polly does not yet use them, but we may switch to them in the near future. 2) Another set of coalescing changes [2] simplifies some data dependences and removes a couple of code generation artifacts. We now understand that the following sets can be merged: { Stmt_S1[i0, i1] -> Stmt_S2[i0 + i1] : i0 >= 0 and i1 <= 1023 - i0 and i1 >= 1 Stmt_S1[i0, 0] -> Stmt_S2[i0] : i0 <= 1023 and i0 >= 1} into: { Stmt_S1[i0, i1] -> Stmt_S2[i0 + i1] : i1 <= 1023 - i0 and i1 >= 0 and i1 >= 1 - i0 and i0 >= 0 } Changes of this kind reduce unnecessary specialization during code generation. - for (int c3 = 0; c3 <= 1023; c3 += 1) { - if (c3 % 2 == 0) { - Stmt_for_body3(c1, c3); - } else - Stmt_for_body3(c1, c3); - } + for (int c3 = 0; c3 <= 1023; c3 += 1) + Stmt_for_body3(c1, c3); [1] http://impact.gforge.inria.fr/impact2014/papers/impact2014-verdoolaege.pdf [2] http://impact.gforge.inria.fr/impact2015/papers/impact2015-verdoolaege.pdf llvm-svn: 229423
* Import isl(+imath) as an external library into PollyTobias Grosser2015-02-041-0/+4866
With this patch Polly is always GPL-free (no dependency on GMP any more). As a result, building and distributing Polly will be easier. Furthermore, there is no need to tightly coordinate isl and Polly releases anymore. We import isl b3e0fa7a05d as well as imath 4d707e5ef2. These are the git versions Polly currently was tested with when using utils/checkout_isl.sh. The imported libraries are both MIT-style licensed. We build isl and imath with -fvisibility=hidden to avoid clashes in case other projects (such as gcc) use conflicting versions of isl. The use of imath can temporarily reduce compile-time performance of Polly. We will work on performance tuning in tree. Patches to isl should be contributed first to the main isl repository and can then later be reimported to Polly. This patch is also a prerequisite for the upcoming isl C++ interface. llvm-svn: 228193
OpenPOWER on IntegriCloud