Nate Begeman 
							
						 
					 
					
						
						
							
						
						eaa13851a7 
					 
					
						
						
							
							Initial implementation of the strength reduction for GEP instructions in  
						
						... 
						
						
						
						loops.  This optimization is not turned on by default yet, but may be run
with the opt tool's -loop-reduce flag.  There are many FIXMEs listed in the
code that will make it far more applicable to a wide range of code, but you
have to start somewhere :)
This limited version currently triggers on the following tests in the
MultiSource directory:
pcompress2: 7 times
cfrac: 5 times
anagram: 2 times
ks: 6 times
yacr2: 2 times
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17134  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-10-18 21:08:22 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8e47e7292c 
					 
					
						
						
							
							Do not prototype any of these passes as returning Pass*.  Instead, be specific  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16431  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-09-20 04:41:39 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						264532cd31 
					 
					
						
						
							
							Remove unused pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16338  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-09-14 16:34:08 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f1fccfd6a8 
					 
					
						
						
							
							Expose breakcriticaledges as a functionpass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15370  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-07-31 10:02:24 +00:00 
						 
				 
			
				
					
						
							
							
								Brian Gaeke 
							
						 
					 
					
						
						
							
						
						96d4bf7aee 
					 
					
						
						
							
							Make the create...() functions for some of these passes return a FunctionPass *.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15276  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-07-27 17:43:21 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3ede6adf18 
					 
					
						
						
							
							New prototype  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15102  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-07-22 08:07:30 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						288c92c16b 
					 
					
						
						
							
							Prototype for new ConstantExpr lowering pass, contributed by Vladimir Prus!  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14397  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-06-25 07:41:06 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bab838e76d 
					 
					
						
						
							
							Add a new prototype  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13685  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-05-23 21:16:13 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8277567dc6 
					 
					
						
						
							
							Add accessor for a Loop Unswitching pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13066  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-04-19 06:28:37 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4c174a7bba 
					 
					
						
						
							
							Add prototype  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13029  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-04-18 05:20:32 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0c58897d1c 
					 
					
						
						
							
							Improve description, add warning  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12570  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-31 21:59:07 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						18bdbc3dda 
					 
					
						
						
							
							Add a simple select instruction lowering pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12540  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-30 18:41:10 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4eddf37ee3 
					 
					
						
						
							
							Move loop extractor to the IPO header  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12374  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-14 02:36:34 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						dddea54b11 
					 
					
						
						
							
							Add the prototype for the LoopExtractor Pass.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11937  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-28 03:33:17 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						a92666decd 
					 
					
						
						
							
							Fix spelling of `tendency'.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11378  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-13 16:23:14 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						fdd13f6afe 
					 
					
						
						
							
							Expose a pass ID for lower-invoke  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11377  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-13 16:16:35 +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 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4a05ba0ab5 
					 
					
						
						
							
							Move isCriticalEdge & SplitCritical edge out of this file, which is only  
						
						... 
						
						
						
						for passes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9851  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-11-10 04:09:44 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						d24fdda8e9 
					 
					
						
						
							
							Declare FunctionPasses as such.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9767  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-11-07 17:19:39 +00:00 
						 
				 
			
				
					
						
							
							
								John Criswell 
							
						 
					 
					
						
						
							
						
						6fbcc26f14 
					 
					
						
						
							
							Added LLVM copyright header (for lack of a better term).  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9304  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-10-20 20:19:47 +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 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5e5252b4c9 
					 
					
						
						
							
							Add new prototype for createLowerInvokePass().  Make simplifycfg be a  
						
						... 
						
						
						
						functionpass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8870  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-10-05 19:15:13 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						48486893f4 
					 
					
						
						
							
							Standardize header file comments  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8782  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-09-30 18:37:50 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3fc6ef1bb9 
					 
					
						
						
							
							Expose the TCE pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8619  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-09-20 05:14:13 +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 
							
						 
					 
					
						
						
							
						
						3dc48c54de 
					 
					
						
						
							
							Add RPR prototype here  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8314  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-09-01 20:44:42 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2757af2d47 
					 
					
						
						
							
							Change the RaiseAllocations pass from being a BasicBlockPass to being a Pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8279  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-09-01 03:14:00 +00:00 
						 
				 
			
				
					
						
							
							
								Brian Gaeke 
							
						 
					 
					
						
						
							
						
						bf3c4cfaad 
					 
					
						
						
							
							Factory methods for function passes now return type FunctionPass *.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7839  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-08-14 06:09:32 +00:00 
						 
				 
			
				
					
						
							
							
								Brian Gaeke 
							
						 
					 
					
						
						
							
						
						19df3876e6 
					 
					
						
						
							
							Factory methods for FunctionPasses now return type FunctionPass *.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7823  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-08-13 18:18:15 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1ee7855dfa 
					 
					
						
						
							
							Add prototype for tail-dup pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6847  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-06-22 20:10:42 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a161f0c7c9 
					 
					
						
						
							
							Expose proto for SRoA pass.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6348  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-27 15:52:45 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						82c89b9f3a 
					 
					
						
						
							
							Hopefully, the final fix for `[Pp]ropogate'.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6251  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-20 21:01:22 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3b1ca40d5d 
					 
					
						
						
							
							Add stub to create lowerSwitches pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5866  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-04-23 16:24:19 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e802a023d9 
					 
					
						
						
							
							Expose isCriticalEdge & SplitCriticalEdge methods from crit-edges pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4075  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-10-08 21:06:27 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f6b684c505 
					 
					
						
						
							
							Checkin new loop-preheader insertion pass.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3943  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-09-26 16:17:33 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1751b7ed27 
					 
					
						
						
							
							Change LowerAllocations pass to 'require' TargetData instead of it being  
						
						... 
						
						
						
						passed in.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3930  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-09-25 23:47:49 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						87944916a4 
					 
					
						
						
							
							Expose passinfo from BreakCriticalEdges pass so that it may be "Required" by  
						
						... 
						
						
						
						other passes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3906  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-09-24 15:42:27 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						119e9ea33b 
					 
					
						
						
							
							Add new BreakCriticalEdges pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3902  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-09-24 00:08:37 +00:00 
						 
				 
			
				
					
						
							
							
								Vikram S. Adve 
							
						 
					 
					
						
						
							
						
						be376cf6d4 
					 
					
						
						
							
							Allow transformation DecomposeArrayRef(GetElementPtrInst* GEP) to  
						
						... 
						
						
						
						be invoked on a single instruction at a time, for use in other passes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3751  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-09-16 16:07:19 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						513d3e8fc5 
					 
					
						
						
							
							Include stub for correlated expression elimination pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3597  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-09-06 18:39:29 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						378fb1df55 
					 
					
						
						
							
							Merge the contents of ChangeAllocations.h into Scalar.h  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3028  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-23 19:37:38 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b8bcb086f7 
					 
					
						
						
							
							Expose CFG simplification pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2696  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-05-21 20:04:15 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0fe2153507 
					 
					
						
						
							
							Add prototype for LICM pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2612  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-05-10 22:44:16 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						531823f125 
					 
					
						
						
							
							Add prototype for the PiNodeInserter pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2592  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-05-10 05:40:37 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						540d63cbc7 
					 
					
						
						
							
							Add expr reassociation pass prototype  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2558  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-05-08 22:19:01 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1ea5c56795 
					 
					
						
						
							
							Spell aggressive right  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2549  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-05-07 22:12:52 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						332f3679d0 
					 
					
						
						
							
							New header file to replace all of the Scalar/*.h files.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2533  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-05-07 19:37:18 +00:00