Misha Brukman 
							
						 
					 
					
						
						
							
						
						81619b121c 
					 
					
						
						
							
							Fixed spelling of `propagation'.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4422  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-10-29 22:55:11 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3ec9a0a5cf 
					 
					
						
						
							
							We need to know the call sites each function hosts  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4258  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-10-22 15:58:23 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						198be22cec 
					 
					
						
						
							
							- Add "ResolvingCaller" to the CallSite record.  This keeps track of which  
						
						... 
						
						
						
						function was finally able to resolve the function call.  Adding this allows
    the TD pass to actually work right!
  - Temporarily disable dead node pruning.  This will be reenabled soon.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4252  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-10-21 19:47:18 +00:00 
						 
				 
			
				
					
						
							
							
								Vikram S. Adve 
							
						 
					 
					
						
						
							
						
						3c579faece 
					 
					
						
						
							
							Added a first-class representation for each call site that can be  
						
						... 
						
						
						
						used in the DS graphs in DSGraph.h.  With that, the special-purpose
class BUDataStructure::CallSite is no longer needed here.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4229  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-10-20 18:08:55 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8d00c8210e 
					 
					
						
						
							
							* Add data structures to BU pass to keep track of call sites for functions  
						
						... 
						
						
						
						* Reenable the TD analysis
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4212  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-10-17 04:23:05 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0d0244d06a 
					 
					
						
						
							
							Remove commented out stuff  
						
						... 
						
						
						
						DataStructure.h doesn't include DSGraph.h now
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4028  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-10-02 22:14:17 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						60a398ed0f 
					 
					
						
						
							
							Move GlobalDSGraph class defn to the end of the file  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4027  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-10-02 21:55:52 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						11aec6cc7d 
					 
					
						
						
							
							Check in DataStructure rewrite so far.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3998  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-10-01 22:34:45 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						044f908791 
					 
					
						
						
							
							- Do not expose ::ID from any of the analyses anymore.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3416  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-08-21 17:09:45 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5b2f502968 
					 
					
						
						
							
							The second parameter of hash_set is the default, remove it.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3273  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-08-09 19:40:42 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5f0eb8da62 
					 
					
						
						
							
							- Cleaned up the interface to AnalysisUsage to take analysis class names  
						
						... 
						
						
						
						instead of ::ID's.
 - Pass::getAnalysis<> now no longer takes an optional argument
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3265  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-08-08 19:01:30 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						49af5e4131 
					 
					
						
						
							
							Changes to be GCC 3.1 friendly  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3184  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-31 19:31:59 +00:00 
						 
				 
			
				
					
						
							
							
								Vikram S. Adve 
							
						 
					 
					
						
						
							
						
						3b43b772e6 
					 
					
						
						
							
							Add GlobalDSGraph -- a common graph that holds externally visible nodes.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3169  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-30 22:02:04 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d472e47b6c 
					 
					
						
						
							
							* Eliminate the Provided set.  All Passes now finally just automatically  
						
						... 
						
						
						
						provide themselves.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3125  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-29 21:03:38 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						97f51a3024 
					 
					
						
						
							
							* Standardize how analysis results/passes as printed with the print() virtual  
						
						... 
						
						
						
						methods
* Eliminate AnalysisID:  Now it is just a typedef for const PassInfo*
* Simplify how AnalysisID's are initialized
* Eliminate Analysis/Writer.cpp/.h: incorporate printing functionality into
  the analyses themselves.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3115  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-27 01:12:15 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5d549083e2 
					 
					
						
						
							
							*** empty log message ***  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3111  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-26 21:11:42 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						00444d0630 
					 
					
						
						
							
							*** empty log message ***  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3107  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-26 19:19:31 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3f5569152c 
					 
					
						
						
							
							GCC 3.1 changes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3070  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-24 22:34:01 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f6a1328e4c 
					 
					
						
						
							
							Remove assert hack now that I'm using the right GDB.  :)  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3045  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-24 17:21:36 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f1ac9f6a7f 
					 
					
						
						
							
							Allow comparison against null  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3009  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-23 17:59:02 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2dfbe3a751 
					 
					
						
						
							
							Rename removeDeadNodes to removeTriviallyDeadNodes  
						
						... 
						
						
						
						Add new removeDeadNodes method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2968  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-18 18:18:40 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a990291462 
					 
					
						
						
							
							Simplify saveOrigFunctionCalls  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2967  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-18 16:23:02 +00:00 
						 
				 
			
				
					
						
							
							
								Vikram S. Adve 
							
						 
					 
					
						
						
							
						
						6aa0d62cb9 
					 
					
						
						
							
							Add support for a top-down propagation pass.  
						
						... 
						
						
						
						Each DSGraph now keeps a list of pending callers that have not
been inlined into the function represented by that graph.
It also keeps a copy of the original call nodes before the BU pass
eliminates some of them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2965  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-18 16:12:08 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						84428e1892 
					 
					
						
						
							
							First cut at implementing bottom up analysis  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2944  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-18 00:11:28 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1dc15b7997 
					 
					
						
						
							
							* Nodes now keep track of any global variables contained within them  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2877  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-11 20:30:18 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						cd0b36fb07 
					 
					
						
						
							
							New implementation of data structure analysis  
						
						... 
						
						
						
						This diff is completely meaningless because this is a replacement
implementation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2872  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-10 22:42:17 +00:00 
						 
				 
			
				
					
						
							
							
								Anand Shukla 
							
						 
					 
					
						
						
							
						
						4a9f933751 
					 
					
						
						
							
							changes to make it compatible with 64bit gcc  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2786  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-06-25 20:22:25 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7e70829632 
					 
					
						
						
							
							MEGAPATCH checkin.  
						
						... 
						
						
						
						For details, See: docs/2002-06-25-MegaPatchInfo.txt
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2779  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-06-25 16:13:24 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						96c466b06a 
					 
					
						
						
							
							Add new optional getPassName() virtual function that a Pass can override  
						
						... 
						
						
						
						to make debugging output a lot nicer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2395  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-04-29 14:57:45 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f57b845547 
					 
					
						
						
							
							* Rename MethodPass class to FunctionPass  
						
						... 
						
						
						
						- Rename runOnMethod to runOnFunction
* Transform getAnalysisUsageInfo into getAnalysisUsage
  - Method is now const
  - It now takes one AnalysisUsage object to fill in instead of 3 vectors
    to fill in
  - Pass's now specify which other passes they _preserve_ not which ones
    they modify (be conservative!)
  - A pass can specify that it preserves all analyses (because it never
    modifies the underlying program)
* s/Method/Function/g in other random places as well
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2333  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-04-27 06:56:12 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						12be9749d6 
					 
					
						
						
							
							Support array allocations  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2326  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-04-27 02:27:11 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a146183c21 
					 
					
						
						
							
							Make data structure acurately get ALL edges, even loads of null fields of  
						
						... 
						
						
						
						nodes that are not shadow nodes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2273  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-04-17 03:24:47 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						28c238636e 
					 
					
						
						
							
							Remove the concept of a critical shadow node  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2265  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-04-16 20:39:23 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						da022cd143 
					 
					
						
						
							
							* Eliminate ArgDSNode's completely, rely now on Scalar map  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2256  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-04-16 03:41:22 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e06e9146ee 
					 
					
						
						
							
							Move FunctionArgument out of iOther.h into Argument.h and rename class to  
						
						... 
						
						
						
						be 'Argument' instead of FunctionArgument.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2217  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-04-09 19:59:31 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1e10c7c278 
					 
					
						
						
							
							Add method to get # nodes in the graph  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2098  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-04-04 19:20:00 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						aedcb72805 
					 
					
						
						
							
							Shadow nodes don't need to know their explicit parent, they just need to  
						
						... 
						
						
						
						know what type to be.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2080  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-04-01 00:12:36 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						41deedf32f 
					 
					
						
						
							
							* Allow access to DSNode iterator as DSNode::iterator/begin/end  
						
						... 
						
						
						
						* Add debugging "dump" method to DSNode
* Fix bugs in DSNode iterator
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2060  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-03-31 07:11:20 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9a691dbc82 
					 
					
						
						
							
							Add accessors and a method to get all the outgoing links for ALL nodes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2055  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-03-30 09:07:51 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5cddb2f0f8 
					 
					
						
						
							
							Add an accessor  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2054  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-03-30 04:02:41 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8aaa6e0f86 
					 
					
						
						
							
							Add a hook to allow the datastructure to keep naturally up to date, even  
						
						... 
						
						
						
						though it's not entirely fleshed out.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2051  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-03-29 21:23:29 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						49a4b220eb 
					 
					
						
						
							
							Expose more information to clients  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2027  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-03-29 03:35:30 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4dc1f82e7e 
					 
					
						
						
							
							Implement getEscapingAllocations & getNonEscapingAllocations  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2021  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-03-28 19:33:00 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d38cadb13d 
					 
					
						
						
							
							* Remove RemoveUnreachableShadowNodes & UnlinkUndistinguishableShadowNodes  
						
						... 
						
						
						
						to reflect the fact that they actually operate on arbitrary nodes
* Clean up public interface of FunctionDSGraph
* add getEscapingAllocations & getNonEscapingAllocations
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2019  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-03-28 19:15:38 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1d8ec6194a 
					 
					
						
						
							
							* Define some operators on PointerVal and PVS's  
						
						... 
						
						
						
						* Nodes can determine whether they are foldable with another node
* Rename NewDSNode to AllocDSNode
* The Function graph breaks up all of the node types into individual
  vectors to alloc fast access when you are looking for a particular type
  of node.  Simplifies much code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2009  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-03-28 17:48:41 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b3ebdadb2c 
					 
					
						
						
							
							* Add a nice utility method to DSNode  
						
						... 
						
						
						
						* Export interface to tell whether an alloc node represent a malloc or alloca
* Add the concept of a "critical" shadow node
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2000  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-03-27 19:41:45 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						26f8a40b51 
					 
					
						
						
							
							Allow isa<DSNode>(..)  
						
						... 
						
						
						
						Simplification routines return true on change
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1996  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-03-27 00:52:57 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d9ddf05014 
					 
					
						
						
							
							New header file for datastructure analysis  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1993  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-03-26 22:38:45 +00:00