Devang Patel 
							
						 
					 
					
						
						
							
						
						d4e7f44319 
					 
					
						
						
							
							If the sign of exit condition and split condition does not match  
						
						... 
						
						
						
						then do not split loop index.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58995  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-10 19:48:34 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						fc19fbd2ca 
					 
					
						
						
							
							Check loop exit predicate properly while eliminating one iteration loop.  
						
						... 
						
						
						
						This patch fixes PR 2869
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57369  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-10-10 22:02:57 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						d44b7c1b07 
					 
					
						
						
							
							Fix typo, fix PR 2865.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57221  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-10-06 23:22:54 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						4fe0fe8b49 
					 
					
						
						
							
							splitLoop does not handle split condition EQ.  
						
						... 
						
						
						
						Fixes PR 2805
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56321  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-09-18 23:45:14 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						00622952ce 
					 
					
						
						
							
							Do not ignore iv uses outside the loop.  
						
						... 
						
						
						
						This one slipped through cracks very well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56284  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-09-17 17:53:47 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						a5e27f8028 
					 
					
						
						
							
							If loop induction variable's start value is less then its exit value then do not split the loop.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53265  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-07-09 00:12:01 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						3637981050 
					 
					
						
						
							
							Testcase for LoopIndexSplit and DomFrontier.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51916  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-03 18:32:27 +00:00 
						 
				 
			
				
					
						
							
							
								Gabor Greif 
							
						 
					 
					
						
						
							
						
						f6cadc440c 
					 
					
						
						
							
							sabre brings to my attention that the 'tr' suffix is also obsolete  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51349  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-05-20 21:00:03 +00:00 
						 
				 
			
				
					
						
							
							
								Gabor Greif 
							
						 
					 
					
						
						
							
						
						722243bd40 
					 
					
						
						
							
							Rename the last test with .llx extension to .ll, resolve duplicate test by 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 
						
						
					 
					
						2008-05-20 19:52:04 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						52abbf5d8a 
					 
					
						
						
							
							Do not erase induction variable increment if it is used outside the loop.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51280  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-05-19 22:23:55 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						60a12907c3 
					 
					
						
						
							
							Add incoming value from header only if phi node has any use inside the loop.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48738  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-24 20:16:14 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						9b03daa2a3 
					 
					
						
						
							
							If loop header is also loop exiting block then OrigPN is incoming value for B loop header.  
						
						... 
						
						
						
						Fixes PR 2030.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47141  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-02-14 23:18:47 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						ea06906559 
					 
					
						
						
							
							A loop latch phi node may have uses inside loop, not just in loop header.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47093  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-02-13 22:23:07 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						23067dfeac 
					 
					
						
						
							
							While moving exit condition, do not drop loop latch on the floor.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47089  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-02-13 22:06:36 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						02c4836f3d 
					 
					
						
						
							
							Keep track of exit value operand number when operands are swapped.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47082  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-02-13 19:48:48 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						82ada54da0 
					 
					
						
						
							
							Fix PR 1995.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46898  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-02-08 22:49:13 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						c840da14c6 
					 
					
						
						
							
							Filter loops that subtract induction variables.  
						
						... 
						
						
						
						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 
						
						
					 
					
						2008-01-29 02:20:41 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						5ffdc56f53 
					 
					
						
						
							
							If ExitValue operand is also defined in Loop header then  
						
						... 
						
						
						
						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 
						
						
					 
					
						2007-12-03 19:17:21 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						a6dff2faeb 
					 
					
						
						
							
							Handle multiple induction variables.  
						
						... 
						
						
						
						This fixes PR714.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42309  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-25 18:24:48 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						453a844128 
					 
					
						
						
							
							Add transformation to update loop interation space. Now,  
						
						... 
						
						
						
						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 
						
						
					 
					
						2007-09-25 17:31:19 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						3f65f02d25 
					 
					
						
						
							
							Fix PR1692  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42209  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-21 21:18:19 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						9c7a9f186c 
					 
					
						
						
							
							Filter exit conditions which are not yet handled.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41800  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-10 18:33:42 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						be97c986e1 
					 
					
						
						
							
							Constant split values needs upper bound and lower bound check, just like any other split value.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41389  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-08-25 01:09:14 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						4a69da9cb0 
					 
					
						
						
							
							While calculating upper loop bound for first loop and lower loop bound for second loop, take care of edge cases.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41387  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-08-25 00:56:38 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						d651f657f2 
					 
					
						
						
							
							Do not split loops rejected by processOneIterationLoop().  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41194  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-08-20 20:24:15 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						7bfd5dba38 
					 
					
						
						
							
							Add loop index split tests.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41146  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-08-17 22:02:15 +00:00