Chris Lattner 
							
						 
					 
					
						
						
							
						
						410354fe0c 
					 
					
						
						
							
							Make the LLVM headers "-ansi -pedantic -Wno-long-long" clean.  
						
						... 
						
						
						
						Patch by Martin Partel!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26313  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-22 16:23:43 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ebccc040e5 
					 
					
						
						
							
							Remove a level of indirection.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26109  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-10 21:32:11 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						85db136695 
					 
					
						
						
							
							Remove a never-working pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25348  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-16 01:05:24 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4c2881ecb9 
					 
					
						
						
							
							Teach inline function how to update the callgraph when it makes changes.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25318  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-14 20:05:06 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a4c29d2037 
					 
					
						
						
							
							Allow the code cloning interfaces to capture some important info about the  
						
						... 
						
						
						
						code being cloned if the client wants.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25281  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-13 18:39:17 +00:00 
						 
				 
			
				
					
						
							
							
								Andrew Lenharth 
							
						 
					 
					
						
						
							
						
						bb227c1b79 
					 
					
						
						
							
							Added documented rsprofiler interface.  Also remove new profiler passes, the  
						
						... 
						
						
						
						old ones have been updated to implement the interface.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24499  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-11-28 18:00:38 +00:00 
						 
				 
			
				
					
						
							
							
								Andrew Lenharth 
							
						 
					 
					
						
						
							
						
						701f5ac73c 
					 
					
						
						
							
							Random sampling (aka Arnold and Ryder) profiling.  This is still preliminary, but it works on spec on x86 and alpha.  The idea is to allow profiling passes to remember what profiling they inserted, then a random sampling framework is inserted which consists of duplicated basic blocks (without profiling), such that at each backedge in the program and entry into every function, the framework chooses whether to use the instrumented code or the instrumentation free code.  The goal of such a framework is to make it reasonably cheap to do random sampling of very expensive profiling products (such as load-value profiling).  
						
						... 
						
						
						
						The code is organized into 3 parts (2 passes)
1) a linked set of profiling passes, which implement an analysis group (linked, like alias analysis are).  These insert profiling into the program, and remember what they inserted, so that at a later time they can be queried about any instruction.
2) a pass that handles inserting the random sampling framework.  This also has options to control how random samples are choosen.  Currently implemented are Global counters, register allocated global counters, and read cycle counter (see? there was a reason for it).
The profiling passes are almost identical to the existing ones (block, function, and null profiling is supported right now), and they are valid passes without the sampling framework (hence the existing passes can be unified with the new ones, not done yet).
Some things are a bit ugly still, but that should be fixed up soon enough.
Other todo? making the counter values not "magic 2^16 -1" values, but dynamically choosable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24493  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-11-28 00:58:09 +00:00 
						 
				 
			
				
					
						
							
							
								Andrew Lenharth 
							
						 
					 
					
						
						
							
						
						7c0c567058 
					 
					
						
						
							
							Reg2Mem is something a pass may depend on, so allow that  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24488  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-11-22 22:14:23 +00:00 
						 
				 
			
				
					
						
							
							
								Andrew Lenharth 
							
						 
					 
					
						
						
							
						
						105b2f5374 
					 
					
						
						
							
							needs to go here to apparently.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24268  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-11-10 02:07:45 +00:00 
						 
				 
			
				
					
						
							
							
								Andrew Lenharth 
							
						 
					 
					
						
						
							
						
						183119cdf6 
					 
					
						
						
							
							The pass everyone has been waiting for!  
						
						... 
						
						
						
						Reg2Mem
for fun you can opt -reg2mem -mem2reg
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24267  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-11-10 01:58:38 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						14b0529532 
					 
					
						
						
							
							Add support alignment of allocation instructions.  
						
						... 
						
						
						
						Add support for specifying alignment and size of setjmp jmpbufs.
No targets currently do anything with this information, nor is it presrved
in the bytecode representation.  That's coming up next.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24196  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-11-05 09:21:28 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3aa4e15331 
					 
					
						
						
							
							Remove the LowerConstantExpressionsPass pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24089  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-10-29 05:32:20 +00:00 
						 
				 
			
				
					
						
							
							
								John Criswell 
							
						 
					 
					
						
						
							
						
						bd9d37026a 
					 
					
						
						
							
							Move some constant folding functions into LLVMAnalysis since they are used  
						
						... 
						
						
						
						by Analysis and Transformation passes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24038  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-10-27 16:00:10 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						71478a09b5 
					 
					
						
						
							
							Don't link these three passes in anymore  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23941  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-10-24 02:30:25 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						581ba9073e 
					 
					
						
						
							
							Don't invade the system namespace  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23917  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-10-24 00:16:03 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9b2b56ef75 
					 
					
						
						
							
							There is no need for this to be VC++ only  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23915  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-10-24 00:08:51 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e214979f79 
					 
					
						
						
							
							Make this work with the internalize change  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23812  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-10-19 01:41:47 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f9c6105a78 
					 
					
						
						
							
							add an option to the internalize pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23782  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-10-18 06:28:16 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						cc0f703f42 
					 
					
						
						
							
							allow demotion to volatile values  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23472  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-09-27 19:38:43 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c5406b55d5 
					 
					
						
						
							
							add a new function  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23443  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-09-26 05:26:32 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bb20372e70 
					 
					
						
						
							
							add a helper  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22823  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-17 06:34:37 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						a83ba0f5c9 
					 
					
						
						
							
							Fix a fixme in CondPropagate.cpp by moving a PhiNode optimization into  
						
						... 
						
						
						
						BasicBlock's removePredecessor routine.  This requires shuffling around
the definition and implementation of hasContantValue from Utils.h,cpp into
Instructions.h,cpp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22664  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-04 23:24:19 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						c8beae2b6d 
					 
					
						
						
							
							Add SimplyLibCalls.cpp to VC++ build  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21554  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-04-26 02:57:49 +00:00 
						 
				 
			
				
					
						
							
							
								Reid Spencer 
							
						 
					 
					
						
						
							
						
						bb3d5d246b 
					 
					
						
						
							
							Declare a function to create the SimplifyLibCalls pass.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21523  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-04-25 02:54:00 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						34695381d6 
					 
					
						
						
							
							Remove trailing whitespace  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21412  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-04-21 20:59:05 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						da3f296854 
					 
					
						
						
							
							new pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21307  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-04-15 21:13:16 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						73459d097b 
					 
					
						
						
							
							add a new prototype  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21305  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-04-15 19:24:49 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						e60f69c054 
					 
					
						
						
							
							Fix VC++ build breakage  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20888  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-03-28 02:52:28 +00:00 
						 
				 
			
				
					
						
							
							
								Alkis Evlogimenos 
							
						 
					 
					
						
						
							
						
						ab7ada3ed6 
					 
					
						
						
							
							Rename createPromoteMemoryToRegister() to  
						
						... 
						
						
						
						createPromoteMemoryToRegisterPass() to be consistent with other pass
creation functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20885  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-03-28 02:01:12 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						2f3c9b7562 
					 
					
						
						
							
							Add support for not strength reducing GEPs where the element size is a small  
						
						... 
						
						
						
						power of two.  This emphatically includes the zeroeth power of two.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20429  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-03-04 04:04:26 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7dd732bf80 
					 
					
						
						
							
							Add an argument.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20413  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-03-03 01:03:10 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						a5ba89421e 
					 
					
						
						
							
							Get VC++ compiling again  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19869  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-28 07:29:32 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						ecc1cef8bf 
					 
					
						
						
							
							Apply feedback from Chris.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19432  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-10 04:23:32 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						6e400f76e6 
					 
					
						
						
							
							Apply feed back from Chris:  
						
						... 
						
						
						
						1. Rename createLoaderPass to CreateProfileLoaderPass
  2. Opt shouldn't use the pass registered in CodeGen.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19431  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-10 03:56:27 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						1d7b5de7ee 
					 
					
						
						
							
							Add last four createXxxPass functions  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19424  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-09 20:42:52 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						534927d82d 
					 
					
						
						
							
							Add even more missing createXxxPass functions.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19402  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-08 22:01:16 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						06deda2d9c 
					 
					
						
						
							
							Add a few more passes to LinkAllPasses.h  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19371  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-08 18:15:23 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						bf65268def 
					 
					
						
						
							
							Add more missing createXxxPass functions.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19370  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-08 17:21:40 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						e89c7c616b 
					 
					
						
						
							
							But not the identation of THAT line  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19328  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-07 07:46:40 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						b99468d718 
					 
					
						
						
							
							Correct indentation levels  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19322  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-07 07:44:02 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						d9ed8c8880 
					 
					
						
						
							
							Add missing createXxxPass functions  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19319  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-07 06:57:28 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						3e4c46fbd6 
					 
					
						
						
							
							Fix spelling.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19317  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-07 06:45:07 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						c313932693 
					 
					
						
						
							
							Update list of passes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19316  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-07 06:12:41 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						835ca25de6 
					 
					
						
						
							
							Fix return type  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19314  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-07 05:41:39 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						e67bc1384a 
					 
					
						
						
							
							Get the #ifdef right on LinkAllPasses.h.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19310  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-06 07:01:08 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						00f3db6a4c 
					 
					
						
						
							
							Fix minor mistakes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19309  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-06 06:29:42 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						d1c452b501 
					 
					
						
						
							
							Get rid of those pesky tabs...  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19308  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-06 06:06:35 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						4b807e0381 
					 
					
						
						
							
							Add project opt to Visual Studio.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19307  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-06 06:02:53 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						466d9398c5 
					 
					
						
						
							
							Fix incorrect return type.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19304  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-06 05:45:45 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3c05176526 
					 
					
						
						
							
							New prototype  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18751  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-12-10 07:55:01 +00:00