summaryrefslogtreecommitdiffstats
path: root/polly/test/Isl/CodeGen/LoopParallelMD
Commit message (Collapse)AuthorAgeFilesLines
* Adjust to debug info metadata format change.Tobias Grosser2018-05-101-1/+1
| | | | | | Rename variable to retainedNodes. This unbreaks the Polly builds. llvm-svn: 331960
* Adapt testcase to LLVM change in DIGlobalVariableExpression.Adrian Prantl2017-08-301-1/+1
| | | | llvm-svn: 312147
* [Polly] Generate more 'canonical' induction variableHongbin Zheng2017-05-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | Today Polly generates induction variable in this way: polly.indvar = phi 0, polly.indvar.next ... polly.indvar.next = polly.indvar + stide polly.loop_cond = predicate polly.indvar, (UB - stride) Instead of: polly.indvar = phi 0, polly.indvar.next ... polly.indvar.next = polly.indvar + stide polly.loop_cond = predicate polly.indvar.next, UB The way Polly generate induction variable cause some problem in the indvar simplify pass. This patch make polly generate the later form, by assuming the induction variable never overflow Differential Revision: https://reviews.llvm.org/D33089 llvm-svn: 302866
* Fix debug info metadata for upstream change in LLVM.Adrian Prantl2016-12-201-1/+1
| | | | llvm-svn: 290154
* Revert "Fix debug info metadata for upstream change in LLVM."Adrian Prantl2016-12-161-1/+1
| | | | llvm-svn: 289983
* Fix debug info metadata for upstream change in LLVM.Adrian Prantl2016-12-161-1/+1
| | | | llvm-svn: 289953
* Adapt test case to recent change in Global Variable DefinitionTobias Grosser2016-09-131-1/+1
| | | | llvm-svn: 281295
* This reverts recent expression type changesTobias Grosser2016-06-111-2/+2
| | | | | | | | | | | | | | | | | | | | | The recent expression type changes still need more discussion, which will happen on phabricator or on the mailing list. The precise list of commits reverted are: - "Refactor division generation code" - "[NFC] Generate runtime checks after the SCoP" - "[FIX] Determine insertion point during SCEV expansion" - "Look through IntToPtr & PtrToInt instructions" - "Use minimal types for generated expressions" - "Temporarily promote values to i64 again" - "[NFC] Avoid unnecessary comparison for min/max expressions" - "[Polly] Fix -Wunused-variable warnings (NFC)" - "[NFC] Simplify min/max expression generation" - "Simplify the type adjustment in the IslExprBuilder" Some of them are just reverted as we would otherwise get conflicts. I will try to re-commit them if possible. llvm-svn: 272483
* Use minimal types for generated expressionsJohannes Doerfert2016-06-061-2/+2
| | | | | | | | | | | | We now use the minimal necessary bit width for the generated code. If operations might overflow (add/sub/mul) we will try to adjust the types in order to ensure a non-wrapping computation. If the type adjustment is not possible, thus the necessary type is bigger than the type value of --polly-max-expr-bit-width, we will use assumptions to verify the computation will not wrap. However, for run-time checks we cannot build assumptions but instead utilize overflow tracking intrinsics. llvm-svn: 271878
* Update two more test cases for r266445+r266446 IITobias Grosser2016-04-151-3/+2
| | | | llvm-svn: 266475
* Adjust debug metadata to LLVM changes in 252219Tobias Grosser2015-11-061-2/+2
| | | | llvm-svn: 252273
* tests: Drop -polly-detect-unprofitable and -polly-no-early-exitTobias Grosser2015-10-063-4/+4
| | | | | | | | These flags are now always passed to all tests and need to be disabled if not needed. Disabling these flags, rather than passing them to almost all tests, significantly simplfies our RUN: lines. llvm-svn: 249422
* DI: Fix testcases after LLVM r246327Duncan P. N. Exon Smith2015-08-281-1/+1
| | | | | | | | | | I ran the script from r246327 and it touched all the right files; committing now to hopefully right the bots, but if my check-polly doesn't come back clean I'll keep looking. http://lab.llvm.org:8011/builders/polly-amd64-linux/builds/33648 llvm-svn: 246341
* Update testcases after LLVM r243885Duncan P. N. Exon Smith2015-08-031-1/+1
| | | | llvm-svn: 243887
* Fix polly tests after LLVM IR change in r243774Duncan P. N. Exon Smith2015-07-311-1/+1
| | | | llvm-svn: 243801
* Rename IslCodeGeneration to CodeGenerationTobias Grosser2015-05-123-4/+4
| | | | | | | | | Besides class, function and file names, we also change the command line option from -polly-codegen-isl to just -polly-codegen. The isl postfix is a leftover from the times when we still had the CLooG based -polly-codegen. Today it is just redundant and we drop it. llvm-svn: 237099
* Update polly for LLVM rename of debug info metadata with DI* prefixDuncan P. N. Exon Smith2015-04-291-18/+18
| | | | | | | Ran the same rename-md-di-prefix.sh script attached to PR23080 as in LLVM r236120 and CFE r236121. llvm-svn: 236127
* Remove target triples from test casesTobias Grosser2015-04-212-2/+0
| | | | | | | | I just learned that target triples prevent test cases to be run on other architectures. Polly test cases are until now sufficiently target independent to not require any target triples. Hence, we drop them. llvm-svn: 235384
* Update Polly tests for the great metadata schema changeDavid Blaikie2015-03-031-15/+15
| | | | llvm-svn: 231089
* Update Polly tests to handle explicitly typed load changes in LLVM.David Blaikie2015-02-272-4/+4
| | | | llvm-svn: 230796
* Update Polly tests to handle explicitly typed gep changes in LLVMDavid Blaikie2015-02-273-5/+5
| | | | llvm-svn: 230784
* ScopDetection: Only detect scops that have at least one read and one writeTobias Grosser2015-02-193-4/+4
| | | | | | | | | | Scops that only read seem generally uninteresting and scops that only write are most likely initializations where there is also little to optimize. To not waste compile time we bail early. Differential Revision: http://reviews.llvm.org/D7735 llvm-svn: 229820
* Adjust to the new explicit debug metadataTobias Grosser2015-01-151-4/+4
| | | | | | This fixes the outfall of r226048 llvm-svn: 226134
* Adjust test for the new 'distinct' metadata nodesTobias Grosser2015-01-091-2/+2
| | | | | | | 'distinct' was introduced in 225474. We now adjust the test cases to match for the additional 'distinct' marker. llvm-svn: 225512
* Run upgrade script from PR21532 to match LLVM changesDuncan P. N. Exon Smith2014-12-152-38/+38
| | | | | | | | | Update tests for LLVM assembly format change in r224257 using the script attached to PR21532. I'm hoping this unsticks the bot [1]. [1]: http://lab.llvm.org:8011/builders/polly-amd64-linux/builds/25432 llvm-svn: 224269
* Remove -polly-codegen-scev option and related codeTobias Grosser2014-11-302-23/+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
* Modify test cases to work with SCEV based code generationTobias Grosser2014-11-161-2/+3
| | | | | | | | This patch includes tests where we actually need to adjust the CHECK lines for SCEV based code generation. Besides these adjustments we add explicit calls to -polly-codegen-scev=[true|false] and make sure we test both cases. llvm-svn: 222112
* Make usage of scev based code generation explicit in testsTobias Grosser2014-11-161-4/+4
| | | | | | This is in preparation of using SCEV based codegen by default in polly llvm-svn: 222111
* Safely generate new loop metadata nodeDavid Peixotto2014-11-071-0/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Polly was accidently modifying a debug info metadata node when attempting to generate a new unique metadata node for the loop id. The problem was that we had dwarf metadata that referred to a metadata node with a null value, like this: !6 = ... some dwarf metadata referring to !7 ... !7 = {null} When we attempt to generate a new metadata node, we reserve the first space for self-referential node by setting the first argument to null and then mutating the node later to refer to itself. However, because the nodes are uniqued based on pointer values, when we get the new metadata node it actually referred to an existing node (!7 in the example). When we went to modify the metadata to point to itself, we were accidently mutating the dwarf metatdata. We ended up in this situation: !6 = ... some dwarf metadata referring to !7 ... !7 = {!7} and this causes an assert when generating the debug info. The fix is simple, we just need to use a unique value when getting a new metadata node. The MDNode::getTemporary() provides exactly the API we need (and it is used in clang to generate the unique nodes). Differential Revision: http://reviews.llvm.org/D6174 llvm-svn: 221550
* Allow to annotate alias scopes in the new SCoP.Johannes Doerfert2014-10-022-18/+18
| | | | | | | | | The command line flag -polly-annotate-alias-scopes controls whether or not Polly annotates alias scopes in the new SCoP (default ON). This can improve later optimizations as the new SCoP is basically an alias free environment for them. llvm-svn: 218877
* Annotate LLVM-IR for all parallel loopsJohannes Doerfert2014-10-011-0/+64
| | | | | | | | | | | | | | This change allows to annotate all parallel loops with loop id metadata. Furthermore, it will annotate memory instructions with llvm.mem.parallel_loop_access metadata for all surrounding parallel loops. This is especially usefull if an external paralleliser is used. This also removes the PollyLoopInfo class and comments the LoopAnnotator. A test case for multiple parallel loops is attached. llvm-svn: 218793
* Emit llvm.loop metadata for parallel loopsTobias Grosser2014-03-041-0/+102
For now we only mark innermost loops for the loop vectorizer. We could later also mark not-innermost loops to enable the introduction of openmp parallelism. llvm-svn: 202854
OpenPOWER on IntegriCloud