summaryrefslogtreecommitdiffstats
path: root/polly/lib/External/isl/include
Commit message (Collapse)AuthorAgeFilesLines
...
* Update to isl-0.18-356-g0b05d01Tobias Grosser2017-03-101-2/+3
| | | | | | This is a regular maintenance update. llvm-svn: 297449
* Update isl to isl-0.18-336-g1e193d9Tobias Grosser2017-03-074-36/+0
| | | | | | This is a regular maintenance update llvm-svn: 297169
* Update isl to isl-0.18-282-g12465a5Tobias Grosser2017-02-233-0/+15
| | | | | | | 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-1712-26/+45
| | | | | | | 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 isl to isl-0.18-9-gd4734f3Tobias Grosser2016-12-221-6/+6
| | | | llvm-svn: 290389
* Update to isl-0.17.1-314-g3106e8dMichael Kruse2016-12-062-3/+4
| | | | | | | | | | | | 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.17.1-284-gbb38638Tobias Grosser2016-11-223-0/+10
| | | | | | Regular maintenance update with only minor changes. llvm-svn: 287703
* Update to isl-0.17.1-267-gbf9723dTobias Grosser2016-11-161-0/+1
| | | | | | | 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-236-ga9c6cc7Tobias Grosser2016-10-203-0/+4
| | | | | | This includes isl_id_to_str, which is used in Michael's upcoming DeLICM patch. llvm-svn: 284689
* isl: update to isl-0.17.1-233-gc911e6aTobias Grosser2016-10-012-1/+20
| | | | llvm-svn: 283049
* Update ISL to isl-0.17.1-203-g3fef898.Michael Kruse2016-09-011-0/+2
| | | | | | This version has isl_space_has_equal_tuples added to the public API. llvm-svn: 280341
* isl: isl-0.17.1-164-gcbba1b6Tobias Grosser2016-07-068-5/+33
| | | | | | | | | | | This is a regular maintenance update to ensure the latest version of isl is tested. Interesting Changes: - AST nodes and expressions are now printed as YAML llvm-svn: 274614
* Update isl to isl-0.17.1-84-g72ffe88Tobias Grosser2016-06-231-0/+2
| | | | | | | This is a regular maintenance update to ensure we are testing with a recent version of isl. llvm-svn: 273597
* Update isl to isl-0.17.1-57-g1879898Tobias Grosser2016-06-124-0/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.17.Michael Kruse2016-05-046-2/+29
| | | | | | | | | | | | This release includes sevaral improvments compared to the previous version isl-0.16.1-145-g243bf7c (from the ISL 0.17 announcement): - optionally combine SCCs incrementally in scheduler - optionally maximize coincidence in scheduler - optionally avoid loop coalescing in scheduler - minor AST generator improvements - improve support for expansions in schedule trees llvm-svn: 268500
* Add files forgotten in r264452Tobias Grosser2016-03-256-0/+51
| | | | llvm-svn: 264460
* Update to isl-0.16.1-145-g243bf7cTobias Grosser2016-03-2514-23/+479
| | | | | | | Just an import to keep track with the latest version of isl. We are not looking for specific features. llvm-svn: 264452
* Update to isl-0.16.1-68-g8fad211Tobias Grosser2016-02-2610-6/+61
| | | | | | | | This commit updates to the latest isl development version. There is no specific feature we need on the Polly side, but we want to ensure test coverage for the latest isl changes. llvm-svn: 262001
* Update to isl-0.16.1-20-gee54b48Tobias Grosser2016-02-041-0/+6
| | | | | | | | | | | | | | | | | | | | This includes some (optional) improvements to the isl scheduler, which we do not use yet, as well as a fix for a bug previously also affecting Polly: commit 662ee9b7d45ebeb7629b239d3ed43442e25bf87c Author: Sven Verdoolaege <skimo@kotnet.org> Date: Mon Jan 25 16:59:32 2016 +0100 isl_basic_map_realign: perform Gaussian elimination on result Many parts of isl assume that Gaussian elimination has been applied to the equality constraints. In particular singleton_extract_point makes this assumption. The input to singleton_extract_point may have undergone parameter alignment. This parameter alignment (ultimately performed by isl_basic_map_realign) therefore needs to make sure the result preserves this property llvm-svn: 259757
* Update to ISL 0.16.1Michael Kruse2016-01-1516-19/+179
| | | | llvm-svn: 257898
* isl: Update to isl-0.15-136-g4d5654aTobias Grosser2015-11-211-2/+3
| | | | | | | | The most interesting change for Polly in this isl update is 4d5654af which in certain cases can speed up the construction of run-time checks from an isl set consisting of several disjuncts significantly. llvm-svn: 253794
* Update isl to isl-0.15-129-gb086c90Tobias Grosser2015-09-011-0/+2
| | | | llvm-svn: 246552
* Update isl to isl-0.15-117-ge42acfeTobias Grosser2015-08-111-0/+2
| | | | | | | | | | | 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 isl-0.15-30-g3518765Tobias Grosser2015-06-305-3/+13
| | | | | | | | This updated contains various changes to isl, including improvements to the AST generator. For Polly, the most important change is a fix that unbreaks builds on darwin (reported by: Jack Howard) llvm-svn: 241048
* Replace repository version of ISL by 'make dist' outputMichael Kruse2015-06-221-9/+0
| | | | | | | | | | | The 'make dist' archive is not dependent on ./configure output and contains a GIT_HEAD_ID file that identifies the version of ISL used. None of the files added or removed are used part of Polly's build process (except of GIT_HEAD_ID since the previous revision r240301). No functional change intended. llvm-svn: 240306
* Update ISL to isl-0.15-3-g532568aMichael Kruse2015-06-187-9/+27
| | | | | | | | | | | | | | 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-2827-342/+333
| | | | | | | 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-183-15/+1
| | | | | | | | 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 isl to 9f767f1766a0Tobias Grosser2015-05-133-21/+2
| | | | | | | | This fixes a bug in the isl scheduler (http://llvm.org/PR21934) Otherwise mostly minor changes. llvm-svn: 237250
* Update isl to c3892bebc0Tobias Grosser2015-05-099-190/+1
| | | | | | Various smaller improvements and bugfixes. llvm-svn: 236932
* Update isl to a6523fb42c35Tobias Grosser2015-04-191-0/+9
| | | | | | | A minor update mostly documenting the isl coding style as well as adding functions to inspect isl_schedule_constraints objects. llvm-svn: 235273
* Update isl to 285e92aeaTobias Grosser2015-03-306-0/+57
| | | | | | | This is mostly a set of schedule tree enhancements which are not yet directly useful to Polly. llvm-svn: 233567
* Update isl to 94d707dTobias Grosser2015-03-195-0/+42
| | | | | | | | | The major improvements are: - Extended schedule tree support - AST generation from schedule trees llvm-svn: 232709
* Update isl to 88d60cfe1 'add isl_ast_expr_call'Tobias Grosser2015-02-262-0/+12
| | | | | | | | For Polly the two interesting changes are short_circuit && and || AST expressions as well as the introduction of isl_ast_build_expr_from_set, a well defined interface to compute ast expressions from constraint sets. llvm-svn: 230636
* Update isl to 0980603 'isl_tab_pip.c: parallel_constraints: drop useless ↵Tobias Grosser2015-02-253-0/+84
| | | | | | | | | | | | | | assignment' This update contains: - Fixes of minor issues detected by clang's scan_build - More schedule tree infrastructure additions This update slightly changes the output of our dependence analysis, but these changes are purely syntactially. llvm-svn: 230528
* Update to isl 99d53692baTobias Grosser2015-02-1618-73/+624
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-0458-0/+6374
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