Chris Lattner 
							
						 
					 
					
						
						
							
						
						a0bc7fc7bd 
					 
					
						
						
							
							Fix PR1735 and Transforms/DeadArgElim/2007-10-18-VarargsReturn.ll by  
						
						... 
						
						
						
						fixing some obviously broken code :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43141  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-18 18:49:29 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						7b714321df 
					 
					
						
						
							
							Move Split<...>() into DomTreeBase.  This should make the #include's of DominatorInternals.h  
						
						... 
						
						
						
						in CodeExtractor and LoopSimplify unnecessary.
Hartmut, could you confirm that this fixes the issues you were seeing?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43115  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-18 05:13:52 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						afa222c895 
					 
					
						
						
							
							Reverting r43070 for now. It's causing llc test failures.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43103  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-17 23:51:13 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						84458323a2 
					 
					
						
						
							
							Do not raise free() call that is called through invoke instruction.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43083  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-17 20:12:58 +00:00 
						 
				 
			
				
					
						
							
							
								Hartmut Kaiser 
							
						 
					 
					
						
						
							
						
						469b7a4ec1 
					 
					
						
						
							
							Fixed linker errors (unresolved externals: split<>(...)) when compiling with VC++. Please review.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43081  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-17 18:37:09 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						afc407ea51 
					 
					
						
						
							
							Apply "Instead of loading small c string constant, use integer constant directly" transformation while processing load instruction.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43070  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-17 07:24:40 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						16a04f3f20 
					 
					
						
						
							
							Use immediate stores.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43055  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-16 23:44:18 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						b9e981304b 
					 
					
						
						
							
							Achieve same result but use fewer lines of code.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42985  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-15 15:31:35 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						7b9e1d251f 
					 
					
						
						
							
							Dest type is always i8 *. This allows some simplification.  
						
						... 
						
						
						
						Do not filter memmove.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42930  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-12 20:10:21 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a79dd432b3 
					 
					
						
						
							
							Fix a bug in my patch last night that broke InstCombine/2007-10-12-Crash.ll  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42920  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-12 18:05:47 +00:00 
						 
				 
			
				
					
						
							
							
								Gabor Greif 
							
						 
					 
					
						
						
							
						
						f3cdf3e3ec 
					 
					
						
						
							
							eliminate warning  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42892  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-12 07:44:54 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6a94de2990 
					 
					
						
						
							
							Fix some 80 column violations.  
						
						... 
						
						
						
						Fix DecomposeSimpleLinearExpr to handle simple constants better.
Don't nuke gep(bitcast(allocation)) if the bitcast(allocation) will
fold the allocation.  This fixes PR1728 and Instcombine/malloc3.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42891  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-12 05:30:59 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						f9193de25b 
					 
					
						
						
							
							Lower memcpy if it makes sense.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42864  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-11 17:21:57 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						b593898e11 
					 
					
						
						
							
							Do not walk invalid iterator.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42812  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-09 21:31:36 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						5c4cd0d82e 
					 
					
						
						
							
							Fix bug in updating dominance frontier after loop  
						
						... 
						
						
						
						unswitch when frontier includes basic blocks that 
are not inside loop.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42654  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-05 22:29:34 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						c1e2660c5d 
					 
					
						
						
							
							Fix 80 col violation.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42591  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-03 21:17:43 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						f476e8e7ce 
					 
					
						
						
							
							Refactor code in a separate method.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42590  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-03 21:16:08 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						cb406c2597 
					 
					
						
						
							
							Use empty() member functions when that's what's being tested for instead  
						
						... 
						
						
						
						of comparing begin() and end().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42585  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-03 19:26:29 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						5a2174febf 
					 
					
						
						
							
							Tone down an overzealous optimization.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42582  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-03 17:45:27 +00:00 
						 
				 
			
				
					
						
							
							
								Tanya Lattner 
							
						 
					 
					
						
						
							
						
						088b5913ef 
					 
					
						
						
							
							Fix PR1719, by not marking llvm.global.annotations internal.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42578  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-03 17:05:40 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bd14f58b76 
					 
					
						
						
							
							Fix PR1719, by not marking llvm.noinline internal.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42565  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-03 03:59:15 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						a7ac2bd407 
					 
					
						
						
							
							Fix stride computations for long double arrays.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42508  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-01 23:08:35 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						bc2265abe1 
					 
					
						
						
							
							Relax unsafe use check. If there is one unconditional use inside the loop then it is safe to promote value even if there is another conditional use inside the loop.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42493  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-01 18:12:58 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						4292d1c02a 
					 
					
						
						
							
							minor long double related changes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42439  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-28 18:06:58 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						ef0ab932ef 
					 
					
						
						
							
							Don't do SRA for unions with long double fields.  
						
						... 
						
						
						
						Fixes a SWB crash.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42422  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-28 00:21:38 +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 
							
						 
					 
					
						
						
							
						
						798b4afd48 
					 
					
						
						
							
							Do not reserve DOM check for GetElementPtrInst.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42306  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-25 17:55:50 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						1c01350f0f 
					 
					
						
						
							
							doh..  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42300  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-25 17:43:08 +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 
							
						 
					 
					
						
						
							
						
						128459b85b 
					 
					
						
						
							
							Do not promote null values because it may be unsafe to do so.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42270  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-24 20:02:42 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						746767b097 
					 
					
						
						
							
							explicit keywords.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42262  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-24 15:48:49 +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 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						ce4d88aa64 
					 
					
						
						
							
							Add partial caching of non-local memory dependence queries.  This provides a modest  
						
						... 
						
						
						
						speedup for GVN.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42185  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-21 03:53:52 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						9ee49c541b 
					 
					
						
						
							
							Update aux. info associated with an instruction before erasing instruction.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42180  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-20 23:45:50 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						d15dd8c525 
					 
					
						
						
							
							Don't increment invalid iterator.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42178  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-20 23:01:50 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						e29578afd5 
					 
					
						
						
							
							Fix optimization. %x = sub %x, %y does not imply that %y is zero.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42157  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-20 00:48:36 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						f2038b1d93 
					 
					
						
						
							
							Avoid unsafe promotion.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42149  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-19 20:18:51 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						46318cdfd0 
					 
					
						
						
							
							Improve comment.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42132  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-19 10:25:38 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						892c7e4a23 
					 
					
						
						
							
							A global variable with external weak linkage can be null, while  
						
						... 
						
						
						
						an alias could alias such a global variable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42130  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-19 10:10:31 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						babbe27007 
					 
					
						
						
							
							Relax loop ExitCondition predicate restriction.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42122  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-19 00:28:47 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						968eee2aa7 
					 
					
						
						
							
							Filter loops where split condition's false branch is not empty. For example  
						
						... 
						
						
						
						for (int i = 0; i < N; ++i) {
  if (i == somevalue)
    dosomething();
   else
    dosomethingelse();
}
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42121  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-19 00:15:16 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						84ef08bfee 
					 
					
						
						
							
							Bail out early, before modifying anything.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42120  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-19 00:11:01 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						4e062e520a 
					 
					
						
						
							
							Work is incomplete. Loop is not modified at all right now.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42119  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-19 00:08:13 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						e3bfb88898 
					 
					
						
						
							
							Fix PR1657  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42075  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-18 01:54:42 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						8893ca6dab 
					 
					
						
						
							
							Do not eliminate loop when it is invalid to do so. For example,  
						
						... 
						
						
						
						for(int i = 0; i < N; i++) {
	if ( i == XYZ) {
		A;
	else
		B;
	}
	C;
	D;
}
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42058  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-17 21:01:05 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						5279d064bc 
					 
					
						
						
							
							Skeleton for transformations to truncate loop's iteration space.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42054  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-17 20:39:48 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						161660e6d2 
					 
					
						
						
							
							Fix comment.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42048  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-17 20:07:40 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						76c1b97e40 
					 
					
						
						
							
							Merge DenseMapKeyInfo & DenseMapValueInfo into DenseMapInfo  
						
						... 
						
						
						
						Add a new DenseMapInfo::isEqual method to allow clients to redefine
the equality predicate used when probing the hash table.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42042  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-17 18:34:04 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						5d066ff7f0 
					 
					
						
						
							
							Instcombine x-((x/y)*y) into a remainder operator.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42035  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-17 17:31:57 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						cdb6d929d0 
					 
					
						
						
							
							Factor the trampoline transformation into a subroutine.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42021  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-17 10:26:40 +00:00