Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | removes a few "const" qualifiers | Sebastian Pop | 2012-11-20 | 1 | -13/+13 | |
| | | | | | | | | | so that I can (someday) call SE->getSCEV without complaint. No semantic change intended. Patch from Preston Briggs <preston.briggs@gmail.com>. llvm-svn: 168391 | |||||
* | DependenceAnalysis: Print all dependency pairs when dumping. Update all ↵ | Benjamin Kramer | 2012-11-13 | 1 | -8/+5 | |
| | | | | | | | | testcases. Part of a patch by Preston Briggs. llvm-svn: 167827 | |||||
* | Fix a couple of comment typos. | Benjamin Kramer | 2012-10-31 | 1 | -2/+2 | |
| | | | | llvm-svn: 167113 | |||||
* | DependenceAnalysis: Don't crash if there is no constant operand. | Benjamin Kramer | 2012-10-31 | 1 | -3/+4 | |
| | | | | | | This makes the code match the comments. Resolves a crash in loop idiom (PR14219). llvm-svn: 167110 | |||||
* | DependenceAnalysis: Push #includes down into the implementation. | Benjamin Kramer | 2012-10-25 | 1 | -1/+5 | |
| | | | | llvm-svn: 166688 | |||||
* | fix warning | Sebastian Pop | 2012-10-12 | 1 | -6/+6 | |
| | | | | | | | | | | | DependenceAnalysis.cpp:1164:32: warning: implicit truncation from 'int' to bitfield changes value from -5 to 3 [-Wconstant-conversion] Result.DV[Level].Direction &= ~Dependence::DVEntry::GT; ^ ~~~~~~~~~~~~~~~~~~~~~~~~ Patch from Preston Briggs <preston.briggs@gmail.com>. llvm-svn: 165784 | |||||
* | dependence analysis | Sebastian Pop | 2012-10-11 | 1 | -0/+3781 | |
Patch from Preston Briggs <preston.briggs@gmail.com>. This is an updated version of the dependence-analysis patch, including an MIV test based on Banerjee's inequalities. It's a fairly complete implementation of the paper Practical Dependence Testing Gina Goff, Ken Kennedy, and Chau-Wen Tseng PLDI 1991 It cannot yet propagate constraints between coupled RDIV subscripts (discussed in Section 5.3.2 of the paper). It's organized as a FunctionPass with a single entry point that supports testing for dependence between two instructions in a function. If there's no dependence, it returns null. If there's a dependence, it returns a pointer to a Dependence which can be queried about details (what kind of dependence, is it loop independent, direction and distance vector entries, etc). I haven't included every imaginable feature, but there's a good selection that should be adequate for supporting many loop transformations. Of course, it can be extended as necessary. Included in the patch file are many test cases, commented with C code showing the loops and array references. llvm-svn: 165708 |