summaryrefslogtreecommitdiffstats
path: root/polly/lib/External/isl/isl_affine_hull.c
Commit message (Collapse)AuthorAgeFilesLines
* Update to isl-0.18-592-gb50ad59Tobias Grosser2017-04-281-6/+8
| | | | | | This is just a general maintenance update. llvm-svn: 301624
* Update to isl-0.18-410-gc253447Tobias Grosser2017-04-031-19/+0
| | | | | | | This is a regular maintenance update to ensure latest isl changes are tested in our buildbots. llvm-svn: 299350
* Update isl to isl-0.18-395-g77701b3Tobias Grosser2017-03-211-1/+1
| | | | | | This is a normal maintenance update. llvm-svn: 298352
* Update isl to isl-0.18-336-g1e193d9Tobias Grosser2017-03-071-26/+0
| | | | | | This is a regular maintenance update llvm-svn: 297169
* Update to isl-0.18-43-g0b4256fTobias Grosser2016-12-311-212/+0
| | | | | | Even more isl coalesce changes. llvm-svn: 290783
* Update isl to isl-0.18-9-gd4734f3Tobias Grosser2016-12-221-1/+1
| | | | llvm-svn: 290389
* Update to isl-0.17.1-267-gbf9723dTobias Grosser2016-11-161-9/+12
| | | | | | | This update corrects an incorrect generation of min/max expressions in the isl AST generator and a problematic nullptr dereference. llvm-svn: 287098
* Update isl to isl-0.17.1-57-g1879898Tobias Grosser2016-06-121-10/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | With this update the isl AST generation extracts disjunctive constraints early on. As a result, code that previously resulted in two branches with (close-to) identical code within them: if (P <= -1) { for (int c0 = 0; c0 < N; c0 += 1) Stmt_store(c0); } else if (P >= 1) for (int c0 = 0; c0 < N; c0 += 1) Stmt_store(c0); results now in only a single branch body: if (P <= -1 || P >= 1) for (int c0 = 0; c0 < N; c0 += 1) Stmt_store(c0); This resolves http://llvm.org/PR27559 Besides the above change, this isl update brings better simplification of sets/maps containing existentially quantified dimensions and fixes a bug in isl's coalescing. llvm-svn: 272500
* Update to ISL 0.16.1Michael Kruse2016-01-151-0/+3
| | | | llvm-svn: 257898
* Update isl to isl-0.15-117-ge42acfeTobias Grosser2015-08-111-0/+9
| | | | | | | | | | | Besides other changes this version of isl contains a fundamental fix to memory corruption issues we have seen with imath-32 backed isl_ints. This update also contains a fix that ensures that the schedule-tree based version of isl's dependence analysis takes the domain of the schedule into account. llvm-svn: 244585
* Update isl to 6be6768eTobias Grosser2015-05-181-8/+17
| | | | | | | | 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-4/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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/+1405
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