Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Remove LoopIndexSplit pass. It is neither maintained nor used by anyone. | Devang Patel | 2010-10-07 | 35 | -2300/+0 |
| | | | | llvm-svn: 116004 | ||||
* | Check for side effects before splitting loop. | Devang Patel | 2010-05-03 | 2 | -0/+61 |
| | | | | | | Patch by Jakub Staszak! llvm-svn: 102928 | ||||
* | add newlines at the end of files. | Chris Lattner | 2010-04-07 | 1 | -1/+1 |
| | | | | llvm-svn: 100705 | ||||
* | Remove tests that checks @llvm.dbg.stoppoint handling. | Devang Patel | 2010-03-01 | 1 | -71/+0 |
| | | | | llvm-svn: 97493 | ||||
* | Delete useless trailing semicolons. | Dan Gohman | 2010-01-05 | 1 | -1/+1 |
| | | | | llvm-svn: 92740 | ||||
* | Change tests from "opt %s" to "opt < %s" so that opt doesn't see the | Dan Gohman | 2009-09-11 | 32 | -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. llvm-svn: 81537 | ||||
* | Use opt -S instead of piping bitcode output through llvm-dis. | Dan Gohman | 2009-09-08 | 5 | -5/+5 |
| | | | | llvm-svn: 81257 | ||||
* | Change these tests to feed the assembly files to opt directly, instead | Dan Gohman | 2009-09-08 | 33 | -33/+33 |
| | | | | | | of using llvm-as, now that opt supports this. llvm-svn: 81226 | ||||
* | Fix PR3913, patch by Jakub Staszak! | Chris Lattner | 2009-08-28 | 1 | -0/+24 |
| | | | | llvm-svn: 80327 | ||||
* | Don't try to split a loop when the controlling icmp instruction | Dan Gohman | 2009-06-27 | 1 | -0/+195 |
| | | | | | | doesn't have an IV-based operand. This fixes PR4471. llvm-svn: 74399 | ||||
* | Split the Add, Sub, and Mul instruction opcodes into separate | Dan Gohman | 2009-06-04 | 2 | -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 llvm-svn: 72897 | ||||
* | Loop Index Split can eliminate a loop if it can determin if loop body is ↵ | Devang Patel | 2009-03-30 | 1 | -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. llvm-svn: 68071 | ||||
* | If branch conditions' one successor is dominating another non-latch ↵ | Devang Patel | 2009-03-02 | 1 | -0/+64 |
| | | | | | | successor then this loop's iteration space can not be restricted. In this example block bb5 is always executed. llvm-svn: 65902 | ||||
* | Ignore DbgInfoIntrinsics. | Devang Patel | 2009-02-06 | 1 | -0/+71 |
| | | | | llvm-svn: 63923 | ||||
* | Rewrite code that 1) filters loops and 2) calculates new loop bounds. | Devang Patel | 2008-12-04 | 5 | -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. llvm-svn: 60554 | ||||
* | If the sign of exit condition and split condition does not match | Devang Patel | 2008-11-10 | 1 | -0/+69 |
| | | | | | | then do not split loop index. llvm-svn: 58995 | ||||
* | Check loop exit predicate properly while eliminating one iteration loop. | Devang Patel | 2008-10-10 | 1 | -0/+66 |
| | | | | | | This patch fixes PR 2869 llvm-svn: 57369 | ||||
* | Fix typo, fix PR 2865. | Devang Patel | 2008-10-06 | 1 | -0/+31 |
| | | | | llvm-svn: 57221 | ||||
* | splitLoop does not handle split condition EQ. | Devang Patel | 2008-09-18 | 1 | -0/+38 |
| | | | | | | Fixes PR 2805 llvm-svn: 56321 | ||||
* | Do not ignore iv uses outside the loop. | Devang Patel | 2008-09-17 | 3 | -4/+80 |
| | | | | | | This one slipped through cracks very well. llvm-svn: 56284 | ||||
* | If loop induction variable's start value is less then its exit value then do ↵ | Devang Patel | 2008-07-09 | 2 | -1/+26 |
| | | | | | | not split the loop. llvm-svn: 53265 | ||||
* | Testcase for LoopIndexSplit and DomFrontier. | Owen Anderson | 2008-06-03 | 1 | -0/+32 |
| | | | | llvm-svn: 51916 | ||||
* | sabre brings to my attention that the 'tr' suffix is also obsolete | Gabor Greif | 2008-05-20 | 1 | -1/+1 |
| | | | | llvm-svn: 51349 | ||||
* | Rename the last test with .llx extension to .ll, resolve duplicate test by ↵ | Gabor Greif | 2008-05-20 | 1 | -1/+1 |
| | | | | | | renaming to isnan2. Now that no test has llx ending there is no need to search for them from dg.exp too. llvm-svn: 51328 | ||||
* | Do not erase induction variable increment if it is used outside the loop. | Devang Patel | 2008-05-19 | 1 | -0/+41 |
| | | | | llvm-svn: 51280 | ||||
* | Add incoming value from header only if phi node has any use inside the loop. | Devang Patel | 2008-03-24 | 1 | -0/+69 |
| | | | | llvm-svn: 48738 | ||||
* | If loop header is also loop exiting block then OrigPN is incoming value for ↵ | Devang Patel | 2008-02-14 | 1 | -0/+464 |
| | | | | | | | | B loop header. Fixes PR 2030. llvm-svn: 47141 | ||||
* | A loop latch phi node may have uses inside loop, not just in loop header. | Devang Patel | 2008-02-13 | 1 | -0/+74 |
| | | | | llvm-svn: 47093 | ||||
* | While moving exit condition, do not drop loop latch on the floor. | Devang Patel | 2008-02-13 | 1 | -0/+72 |
| | | | | llvm-svn: 47089 | ||||
* | Keep track of exit value operand number when operands are swapped. | Devang Patel | 2008-02-13 | 1 | -0/+67 |
| | | | | llvm-svn: 47082 | ||||
* | Fix PR 1995. | Devang Patel | 2008-02-08 | 1 | -0/+48 |
| | | | | llvm-svn: 46898 | ||||
* | Filter loops that subtract induction variables. | Devang Patel | 2008-01-29 | 1 | -0/+46 |
| | | | | | | | | These loops are not yet handled. Fix PR 1912. llvm-svn: 46484 | ||||
* | If ExitValue operand is also defined in Loop header then | Devang Patel | 2007-12-03 | 1 | -0/+44 |
| | | | | | | | | insert new ExitValue after this operand definition. This fixes PR1828. llvm-svn: 44539 | ||||
* | Handle multiple induction variables. | Devang Patel | 2007-09-25 | 1 | -0/+59 |
| | | | | | | This fixes PR714. llvm-svn: 42309 | ||||
* | Add transformation to update loop interation space. Now, | Devang Patel | 2007-09-25 | 1 | -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(); llvm-svn: 42299 | ||||
* | Fix PR1692 | Devang Patel | 2007-09-21 | 1 | -0/+63 |
| | | | | llvm-svn: 42209 | ||||
* | Filter exit conditions which are not yet handled. | Devang Patel | 2007-09-10 | 1 | -0/+50 |
| | | | | llvm-svn: 41800 | ||||
* | Constant split values needs upper bound and lower bound check, just like any ↵ | Devang Patel | 2007-08-25 | 1 | -0/+52 |
| | | | | | | other split value. llvm-svn: 41389 | ||||
* | While calculating upper loop bound for first loop and lower loop bound for ↵ | Devang Patel | 2007-08-25 | 1 | -0/+52 |
| | | | | | | second loop, take care of edge cases. llvm-svn: 41387 | ||||
* | Do not split loops rejected by processOneIterationLoop(). | Devang Patel | 2007-08-20 | 2 | -4/+2 |
| | | | | llvm-svn: 41194 | ||||
* | Add loop index split tests. | Devang Patel | 2007-08-17 | 7 | -0/+325 |
llvm-svn: 41146 |