Chris Lattner 
							
						 
					 
					
						
						
							
						
						3280f7bd55 
					 
					
						
						
							
							Move isLoopInvariant to the Loop class  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13051  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-04-18 22:46:08 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5fa802fe27 
					 
					
						
						
							
							Loop exit sets are no longer explicitly held, they are dynamically computed on demand.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13046  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-04-18 22:15:13 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						118dd0ce3d 
					 
					
						
						
							
							Implement LICM of calls in simple cases.  This is sufficient to move around  
						
						 
						
						... 
						
						
						
						sin/cos/strlen calls and stuff.  This implements:
  LICM/call_sink_pure_function.ll
  LICM/call_sink_const_function.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12415  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-15 04:11:30 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						529429224c 
					 
					
						
						
							
							Update comment  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11082  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-02 20:09:22 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						329c1c6c94 
					 
					
						
						
							
							Improve encapsulation in the Loop and LoopInfo classes by eliminating the  
						
						 
						
						... 
						
						
						
						getSubLoops/getTopLevelLoops methods, replacing them with iterator-based
accessors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10714  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-01-08 00:09:44 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a3df8a964a 
					 
					
						
						
							
							Remove the wierd "Operands" loop, by traversing basicblocks in reverse order  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10536  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-19 08:18:16 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e4365b2e8c 
					 
					
						
						
							
							Implement LICM/sink_multiple.ll, by sinking all possible instructions in the  
						
						 
						
						... 
						
						
						
						loop before hoisting any.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10534  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-19 07:22:45 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ba7df4c482 
					 
					
						
						
							
							When we delete instructions from the loop, make sure to remove them from the  
						
						 
						
						... 
						
						
						
						AliasSetTracker as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10507  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-18 08:12:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						00ad4a2d17 
					 
					
						
						
							
							Do not promote volatile alias sets into registers  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10458  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-14 04:52:31 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ea9403f2aa 
					 
					
						
						
							
							Fix LICM/2003-12-11-SinkingToPHI.ll, and quite possibly all of the other known problems in the universe.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10409  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-11 22:23:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7d3ced934f 
					 
					
						
						
							
							Fix bug: LICM/sink_multiple_exits.ll  
						
						 
						
						... 
						
						
						
						Thanks for pointing this out John  :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10387  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-10 22:35:56 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						df45bd3803 
					 
					
						
						
							
							Don't allow dead instructions to stop sinking early.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10386  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-10 20:43:29 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e3cfe8d563 
					 
					
						
						
							
							Simplify code  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10371  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-10 16:58:24 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f594a03197 
					 
					
						
						
							
							Avoid performing two identical lookups when one will suffice  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10370  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-10 16:57:24 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0ed2da9ac7 
					 
					
						
						
							
							Make LICM itself a bit more efficient, and make the generated code more efficient too: don't insert a store in every exit block, because a particular block may be exited to more than once by a loop  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10369  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-10 15:56:24 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a2706518f9 
					 
					
						
						
							
							Implement instruction sinking out of loops.  This still can do a little bit  
						
						 
						
						... 
						
						
						
						better job, but this is the majority of the work.  This implements
LICM/sink*.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10358  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-10 06:41:05 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ed6dfc2856 
					 
					
						
						
							
							Refactor code a little bit, eliminating the gratuitous InstVisitor, which  
						
						 
						
						... 
						
						
						
						should make subsequent changes simpler.  This also allows us to hoist vaarg
and vanext instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10342  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-09 19:32:44 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						92094b4d92 
					 
					
						
						
							
							Fine grainify namespacification  
						
						 
						
						... 
						
						
						
						Code cleanups
Make LICM::SafeToHoist marginally more efficient
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10341  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-09 17:18:00 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Brian Gaeke 
							
						 
					 
					
						
						
							
						
						d0fde30ce8 
					 
					
						
						
							
							Put all LLVM code into the llvm namespace, as per bug 109.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-11-11 22:41:34 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						ed1f7c81aa 
					 
					
						
						
							
							Declare FunctionPasses as such so that they can be used in FunctionPassManager.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9768  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-11-07 17:20:18 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								John Criswell 
							
						 
					 
					
						
						
							
						
						b576c94c15 
					 
					
						
						
							
							Added LLVM project notice to the top of every C++ source file.  
						
						 
						
						... 
						
						
						
						Header files will be on the way.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9298  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-10-20 19:43:21 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4a650af599 
					 
					
						
						
							
							Wrap code at 80 columns  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9073  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-10-13 05:04:27 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						98bf436e2e 
					 
					
						
						
							
							Rename loop preheaders pass to loop simplify  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9061  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-10-12 21:52:28 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						cf00c4ab3b 
					 
					
						
						
							
							Fix spelling.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9027  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-10-10 17:57:28 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						43f820d1f7 
					 
					
						
						
							
							Change the interface to PromoteMemToReg to also take a DominatorTree  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8883  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-10-05 21:20:13 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c444a4228f 
					 
					
						
						
							
							Renamed DominatorTree::Node::getNode() -> getBlock()  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8469  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-09-11 16:26:13 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						352361b409 
					 
					
						
						
							
							Spell `definite' correctly.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8467  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-09-11 15:32:37 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						065a616ada 
					 
					
						
						
							
							Fix spell-o's  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8431  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-09-10 05:29:43 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						61c1e7e32d 
					 
					
						
						
							
							Do not hoist volatile loads  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8399  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-09-08 18:17:14 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tanya Lattner 
							
						 
					 
					
						
						
							
						
						11a49a722f 
					 
					
						
						
							
							Fixed minor bug in SafeToHoist and made some changes suggested by Chris.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7614  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-08-05 20:39:02 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Tanya Lattner 
							
						 
					 
					
						
						
							
						
						9966c03aad 
					 
					
						
						
							
							Fixed LICM bug that hoists trapping instructions that are not guaranteed to execute.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7612  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-08-05 18:45:46 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6806f5614d 
					 
					
						
						
							
							DEBUG got moved to Support/Debug.h  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7492  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-08-01 22:15:03 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e408e25132 
					 
					
						
						
							
							Remove unnecesary &*'s  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5872  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-04-23 16:37:45 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0252e49f6d 
					 
					
						
						
							
							Convert LICM over to use AliasSetTracker.  Besides being nicer, this automatically  
						
						 
						
						... 
						
						
						
						allows LICM to use access sizes to help alias analysis be more precise.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5693  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-03-03 23:32:45 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						fb743a937f 
					 
					
						
						
							
							Change the mem2reg interface to accept a TargetData argument  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5685  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-03-03 17:25:18 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						caadc93f7b 
					 
					
						
						
							
							Fix bug: LICM/2003-02-28-PromoteDifferentType.ll  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5675  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-02-28 19:21:40 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8601a9bf54 
					 
					
						
						
							
							Fix bug: 2003-02-27-StoreSinkPHIs.ll  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5658  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-02-27 21:59:36 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2d0a4a4eb8 
					 
					
						
						
							
							Convert to work with new AliasAnalysis interface by conservatively assuming all pointers are arbitrarily large accesses  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5636  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-02-26 19:28:57 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2e6e741b73 
					 
					
						
						
							
							Initial implementation of Loop invariant memory->scalar promotion  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5613  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-02-24 03:52:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						cb2610ea03 
					 
					
						
						
							
							- Rename AnalysisUsage::preservesAll to getPreservesAll & preservesCFG to  
						
						 
						
						... 
						
						
						
						setPreservesCFG to be less confusing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4255  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-10-21 20:00:28 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a92f696b74 
					 
					
						
						
							
							Updates to work with recent Statistic's changes:  
						
						 
						
						... 
						
						
						
						* Renamed StatisticReporter.h/cpp to Statistic.h/cpp
    * Broke constructor to take two const char * arguments instead of one, so
      that indendation can be taken care of automatically.
    * Sort the list by pass name when printing
    * Make sure to print all statistics as a group, instead of randomly when
      the statistics dtors are called.
    * Updated ProgrammersManual with new semantics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4002  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-10-01 22:38:41 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b461373fbc 
					 
					
						
						
							
							Fix bug in LICM that caused the previous big win. :(  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3980  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-09-29 22:26:07 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						952eaee239 
					 
					
						
						
							
							Hoist the contents of Loops in depth first order in the dominator tree,  
						
						 
						
						... 
						
						
						
						rather than in random order.  This causes LICM to be DRAMATICALLY more
effective. For example, on bzip2.c, it is able to hoist 302 loads and
2380 total instructions, as opposed to 44/338 before.  This  obviously
makes other transformations much more powerful as well!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3978  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-09-29 21:46:09 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						99a57216a9 
					 
					
						
						
							
							- Further cleanups of LICM pass, remove extra work from previous implementation  
						
						 
						
						... 
						
						
						
						- Do not clone instructions then insert clone outside of loop.  Just move them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3951  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-09-26 19:40:25 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						94170596b7 
					 
					
						
						
							
							Improve comments, doxygenize more  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3950  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-09-26 16:52:07 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9646e6b6af 
					 
					
						
						
							
							Clean up LICM significantly now that it is guaranteed to have loop preheaders  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3947  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-09-26 16:38:03 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						eb53ae4f2d 
					 
					
						
						
							
							Loop invariant code motion now depends on the LoopPreheader pass.  Dead code  
						
						 
						
						... 
						
						
						
						has not yet been removed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3945  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-09-26 16:19:31 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1d608abbc0 
					 
					
						
						
							
							Clean up code due to auto-insert constructors  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3665  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-09-10 22:38:47 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						24ea74eb9a 
					 
					
						
						
							
							Load & StoreInst no longer derive from MemAccessInst, so we don't have  
						
						 
						
						... 
						
						
						
						to handle indexing anymore
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3485  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-08-22 22:49:05 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f5e84aa088 
					 
					
						
						
							
							Add capability of using pointer analysis to LICM  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3478  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-08-22 21:39:55 +00:00