aboutsummaryrefslogtreecommitdiffstats
path: root/test/Transforms/LoopIndexSplit
Commit message (Collapse)AuthorAgeFilesLines
* Remove LoopIndexSplit pass. It is neither maintained nor used by anyone.Devang Patel2010-10-0735-2300/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116004 91177308-0d34-0410-b5e6-96231b3b80d8
* Check for side effects before splitting loop.Devang Patel2010-05-032-0/+61
| | | | | | | Patch by Jakub Staszak! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102928 91177308-0d34-0410-b5e6-96231b3b80d8
* add newlines at the end of files.Chris Lattner2010-04-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100705 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove tests that checks @llvm.dbg.stoppoint handling.Devang Patel2010-03-011-71/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97493 91177308-0d34-0410-b5e6-96231b3b80d8
* Delete useless trailing semicolons.Dan Gohman2010-01-051-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92740 91177308-0d34-0410-b5e6-96231b3b80d8
* Change tests from "opt %s" to "opt < %s" so that opt doesn't see theDan Gohman2009-09-1132-32/+32
| | | | | | | | | input filename so that opt doesn't print the input filename in the output so that grep lines in the tests don't unintentionally match strings in the input filename. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81537 91177308-0d34-0410-b5e6-96231b3b80d8
* Use opt -S instead of piping bitcode output through llvm-dis.Dan Gohman2009-09-085-5/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81257 91177308-0d34-0410-b5e6-96231b3b80d8
* Change these tests to feed the assembly files to opt directly, insteadDan Gohman2009-09-0833-33/+33
| | | | | | | of using llvm-as, now that opt supports this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81226 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR3913, patch by Jakub Staszak!Chris Lattner2009-08-281-0/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80327 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't try to split a loop when the controlling icmp instructionDan Gohman2009-06-271-0/+195
| | | | | | | doesn't have an IV-based operand. This fixes PR4471. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74399 91177308-0d34-0410-b5e6-96231b3b80d8
* Split the Add, Sub, and Mul instruction opcodes into separateDan Gohman2009-06-042-10/+10
| | | | | | | | | | | | | | | | integer and floating-point opcodes, introducing FAdd, FSub, and FMul. For now, the AsmParser, BitcodeReader, and IRBuilder all preserve backwards compatability, and the Core LLVM APIs preserve backwards compatibility for IR producers. Most front-ends won't need to change immediately. This implements the first step of the plan outlined here: http://nondot.org/sabre/LLVMNotes/IntegerOverflow.txt git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72897 91177308-0d34-0410-b5e6-96231b3b80d8
* Loop Index Split can eliminate a loop if it can determin if loop body is ↵Devang Patel2009-03-301-0/+24
| | | | | | executed only once. There was a bug in determining IV based value of the iteration for which the loop body is executed. Fix it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68071 91177308-0d34-0410-b5e6-96231b3b80d8
* If branch conditions' one successor is dominating another non-latch ↵Devang Patel2009-03-021-0/+64
| | | | | | successor then this loop's iteration space can not be restricted. In this example block bb5 is always executed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65902 91177308-0d34-0410-b5e6-96231b3b80d8
* Ignore DbgInfoIntrinsics.Devang Patel2009-02-061-0/+71
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63923 91177308-0d34-0410-b5e6-96231b3b80d8
* Rewrite code that 1) filters loops and 2) calculates new loop bounds.Devang Patel2008-12-045-46/+60
| | | | | | | | | This fixes many bugs. I will add more test cases in a separate check-in. Some day, the code that manipulates CFG and updates dom. info could use refactoring help. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60554 91177308-0d34-0410-b5e6-96231b3b80d8
* If the sign of exit condition and split condition does not matchDevang Patel2008-11-101-0/+69
| | | | | | | then do not split loop index. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58995 91177308-0d34-0410-b5e6-96231b3b80d8
* Check loop exit predicate properly while eliminating one iteration loop.Devang Patel2008-10-101-0/+66
| | | | | | | This patch fixes PR 2869 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57369 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix typo, fix PR 2865.Devang Patel2008-10-061-0/+31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57221 91177308-0d34-0410-b5e6-96231b3b80d8
* splitLoop does not handle split condition EQ.Devang Patel2008-09-181-0/+38
| | | | | | | Fixes PR 2805 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56321 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not ignore iv uses outside the loop.Devang Patel2008-09-173-4/+80
| | | | | | | This one slipped through cracks very well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56284 91177308-0d34-0410-b5e6-96231b3b80d8
* If loop induction variable's start value is less then its exit value then do ↵Devang Patel2008-07-092-1/+26
| | | | | | not split the loop. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53265 91177308-0d34-0410-b5e6-96231b3b80d8
* Testcase for LoopIndexSplit and DomFrontier.Owen Anderson2008-06-031-0/+32
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51916 91177308-0d34-0410-b5e6-96231b3b80d8
* sabre brings to my attention that the 'tr' suffix is also obsoleteGabor Greif2008-05-201-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51349 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename the last test with .llx extension to .ll, resolve duplicate test by ↵Gabor Greif2008-05-201-1/+1
| | | | | | renaming to isnan2. Now that no test has llx ending there is no need to search for them from dg.exp too. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51328 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not erase induction variable increment if it is used outside the loop.Devang Patel2008-05-191-0/+41
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51280 91177308-0d34-0410-b5e6-96231b3b80d8
* Add incoming value from header only if phi node has any use inside the loop.Devang Patel2008-03-241-0/+69
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48738 91177308-0d34-0410-b5e6-96231b3b80d8
* If loop header is also loop exiting block then OrigPN is incoming value for ↵Devang Patel2008-02-141-0/+464
| | | | | | | | | | B loop header. Fixes PR 2030. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47141 91177308-0d34-0410-b5e6-96231b3b80d8
* A loop latch phi node may have uses inside loop, not just in loop header.Devang Patel2008-02-131-0/+74
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47093 91177308-0d34-0410-b5e6-96231b3b80d8
* While moving exit condition, do not drop loop latch on the floor.Devang Patel2008-02-131-0/+72
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47089 91177308-0d34-0410-b5e6-96231b3b80d8
* Keep track of exit value operand number when operands are swapped.Devang Patel2008-02-131-0/+67
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47082 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR 1995.Devang Patel2008-02-081-0/+48
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46898 91177308-0d34-0410-b5e6-96231b3b80d8
* Filter loops that subtract induction variables.Devang Patel2008-01-291-0/+46
| | | | | | | | | These loops are not yet handled. Fix PR 1912. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46484 91177308-0d34-0410-b5e6-96231b3b80d8
* If ExitValue operand is also defined in Loop header thenDevang Patel2007-12-031-0/+44
| | | | | | | | | insert new ExitValue after this operand definition. This fixes PR1828. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44539 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle multiple induction variables.Devang Patel2007-09-251-0/+59
| | | | | | | This fixes PR714. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42309 91177308-0d34-0410-b5e6-96231b3b80d8
* Add transformation to update loop interation space. Now,Devang Patel2007-09-251-0/+57
| | | | | | | | | | | | | | | | | for (i=A; i<N; i++) { if (i < X && i > Y) do_something(); } is transformed into U=min(N,X); L=max(A,Y); for (i=L;i<U;i++) do_somethihg(); git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42299 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR1692Devang Patel2007-09-211-0/+63
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42209 91177308-0d34-0410-b5e6-96231b3b80d8
* Filter exit conditions which are not yet handled.Devang Patel2007-09-101-0/+50
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41800 91177308-0d34-0410-b5e6-96231b3b80d8
* Constant split values needs upper bound and lower bound check, just like any ↵Devang Patel2007-08-251-0/+52
| | | | | | other split value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41389 91177308-0d34-0410-b5e6-96231b3b80d8
* While calculating upper loop bound for first loop and lower loop bound for ↵Devang Patel2007-08-251-0/+52
| | | | | | second loop, take care of edge cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41387 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not split loops rejected by processOneIterationLoop().Devang Patel2007-08-202-4/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41194 91177308-0d34-0410-b5e6-96231b3b80d8
* Add loop index split tests.Devang Patel2007-08-177-0/+325
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41146 91177308-0d34-0410-b5e6-96231b3b80d8