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