Misha Brukman 
							
						 
					 
					
						
						
							
						
						dd298c8c6e 
					 
					
						
						
							
							Doxygenified and cleand up comments.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12294  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-11 23:08:20 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						69a69ff5fd 
					 
					
						
						
							
							new method  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12263  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-09 19:36:59 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						66be3c8f72 
					 
					
						
						
							
							Rename method, add new method  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12103  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-03 22:00:20 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3d549b18a3 
					 
					
						
						
							
							De-inline methods  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12101  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-03 20:55:15 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						23511597fe 
					 
					
						
						
							
							Add new method  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12056  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-01 19:36:50 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						99df257910 
					 
					
						
						
							
							Fix the "partial pool allocator" on em3d and others.  The problem is that  
						
						... 
						
						
						
						DSNodes, unlike other GraphTraits nodes, can have null outgoing edges, and
df_iterator doesn't take this into consideration.  As a workaround, the
successor iterator now handles null nodes and 'indicates' that null has
no successors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12025  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-01 01:42:26 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9c0b9bf2b5 
					 
					
						
						
							
							Update comments and add warning  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11691  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-21 22:27:20 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bbdfe40ba7 
					 
					
						
						
							
							Add a method useful for updating DSA  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11636  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-19 21:27:50 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4ff0b9636d 
					 
					
						
						
							
							Substantially improve the DSA code by removing 'forwarding' nodes from  
						
						... 
						
						
						
						DSGraphs while they are forwarding.  When the last reference to the forwarding
node is dropped, the forwarding node is autodeleted.  This should simplify
removeTriviallyDead nodes, and is only (efficiently) possible because we are
using an ilist of dsnodes now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11175  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-08 01:27:18 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						28897e1784 
					 
					
						
						
							
							Switch the Nodes list from being an std::vector<DSNode*> to an ilist<DSNode>  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11173  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-08 00:53:26 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						04364fb01e 
					 
					
						
						
							
							Change to use iterators instead of direct access  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11170  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-08 00:22:41 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e187d56520 
					 
					
						
						
							
							Abstract out the Nodes collection.  Instead of providing a getNodes() method,  
						
						... 
						
						
						
						provide node_begin/end iterators, which are only guaranteed to be
bidirectional, not random access.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11165  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-07 23:57:09 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bee5ff3ae2 
					 
					
						
						
							
							Actually USE isForwarding method  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11160  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-07 23:02:32 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d1d2be3c16 
					 
					
						
						
							
							As Alkis pointed out to me, I forgot to commit this... :(  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11159  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-07 22:54:19 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						14c67ccf02 
					 
					
						
						
							
							Keep track of all of the globals inserted into the scalar map  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10995  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-01-28 03:01:22 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						18348fe201 
					 
					
						
						
							
							Pull the ScalarMap out into something that is more structured than what we had  
						
						... 
						
						
						
						before.  This allows us to have a place to implement optimizations in a
structured way.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10994  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-01-28 02:42:12 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						660f1e90ec 
					 
					
						
						
							
							Minor tweaks  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10983  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-01-27 21:49:42 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7a31285c3f 
					 
					
						
						
							
							Add comments, allow DSNode "copy ctor" to ignore outgoing links, add more  
						
						... 
						
						
						
						structured access to the globals list, add a couple helper methods.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10982  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-01-27 21:49:25 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5f549af582 
					 
					
						
						
							
							* cloneReachable* and clonePartiallyInto are not obsolete  
						
						... 
						
						
						
						* Make AssertNodeInGraph not be HORRIBLY time consuming
* Eliminate the dead mergeInGlobalsGraph method
*** Add the definition for the new ReachabilityCloner class
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10981  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-01-27 21:48:35 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						078c513e87 
					 
					
						
						
							
							Add new flag, other minor modifications  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10969  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-01-23 01:42:32 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1db1c93b30 
					 
					
						
						
							
							Fix grammar  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10968  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-01-23 01:42:16 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2f561384fb 
					 
					
						
						
							
							Eliminated the CompletedNodes argument to the cloneReachable* methods.  This  
						
						... 
						
						
						
						map was only used to implement a marginal GlobalsGraph optimization, and it
actually slows the analysis down (due to the overhead of keeping it), so just
eliminate it entirely.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10955  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-01-22 16:56:13 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9a37f2d96a 
					 
					
						
						
							
							It doesn't make sense for one side to be const, but not the other.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10952  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-01-22 16:08:51 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9e9848d037 
					 
					
						
						
							
							Remove const qualifier (all Value*'s are nonconst in DSA, so it's not clear  
						
						... 
						
						
						
						why this one was)
Add new method proto
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10950  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-01-22 15:26:52 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c4282a33d1 
					 
					
						
						
							
							Specialize std::swap correctly  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10949  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-01-22 15:26:15 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						21fc51daa5 
					 
					
						
						
							
							Add methods for implementation  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9963  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-11-13 05:05:34 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7d26815d8d 
					 
					
						
						
							
							Add an initial version of the CompleteBUDataStructures pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9955  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-11-13 01:42:38 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f58aefcb20 
					 
					
						
						
							
							Add argument  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9921  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-11-12 17:58:09 +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 
							
						 
					 
					
						
						
							
						
						3b120be94f 
					 
					
						
						
							
							Add new method  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9879  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-11-11 05:08:36 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						15869aa2c7 
					 
					
						
						
							
							All DSGraphs keep a reference to the targetdata they are created with.  This is  
						
						... 
						
						
						
						used to eliminate the hard coded, hacked in, sparc specific, global TargetData.
Changing the TargetData used to actually match the code fixes problems, and
eliminates a crash.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9659  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-11-02 22:27:28 +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 
							
						 
					 
					
						
						
							
						
						628bf091e6 
					 
					
						
						
							
							Add prototype  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8640  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-09-21 00:28:18 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						808a7aeec7 
					 
					
						
						
							
							Switch from using CallInst's to represent call sites to using the LLVM  
						
						... 
						
						
						
						CallSite class.  Now we can represent function calls by invoke instructions
too!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8629  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-09-20 16:34:13 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						51757155fa 
					 
					
						
						
							
							Unsquishify  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8612  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-09-20 01:23:29 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8366b38ff7 
					 
					
						
						
							
							Add a comment to the method decl  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7609  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-08-05 18:38:16 +00:00 
						 
				 
			
				
					
						
							
							
								Sumant Kowshik 
							
						 
					 
					
						
						
							
						
						9f2ac19f8e 
					 
					
						
						
							
							Added declaration of mergeInGlobalsGraph  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7607  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-08-05 17:06:18 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						869ff9e7be 
					 
					
						
						
							
							Remove #includes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7339  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-26 22:56:46 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d957518b51 
					 
					
						
						
							
							Use the C++ <cassert> header, not the C <assert.h> header  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7310  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-25 17:34:17 +00:00 
						 
				 
			
				
					
						
							
							
								Vikram S. Adve 
							
						 
					 
					
						
						
							
						
						a53e3da92c 
					 
					
						
						
							
							(1) Added DSGraph::cloneReachableSubgraph and DSGraph::cloneReachableNodes  
						
						... 
						
						
						
						to clone the subgraph reachable from a set of root nodes, into the
    current graph, merging the global nodes into those in the current graph.
(2) Added DSGraph::updateFromGlobalGraph() to rematerialize nodes from the
    globals graph into the current graph in both BU and TD passes.
(3) Added hash_set<const GlobalValue*> InlinedGlobals: a set of globals to
    track which globals have been inlined into the current graph from
    callers or callees.  In the TD pass, such globals are up-to-date and
    do not need to be rematerialized from the GlobalsGraph.
(4) Added StripIncompleteBit/KeepIncompleteBit to remove incomplete bit
    when cloning nodes into the globals graph.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7190  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-16 21:45:15 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3915da3e0f 
					 
					
						
						
							
							INCLUDE_PARENT_GRAPH is required  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7089  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-02 23:57:21 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a523e22a20 
					 
					
						
						
							
							Remove dead method  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7083  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-02 23:43:06 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8fd2715098 
					 
					
						
						
							
							Add new methods  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7057  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-02 04:37:00 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						73440f6a15 
					 
					
						
						
							
							Disable the parent graph code when not compiled in DEBUG mode  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7056  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-02 04:33:55 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c019f9bba5 
					 
					
						
						
							
							TD pass keeps track of which functions have complete arguments  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7048  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-01 21:12:10 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b512b24442 
					 
					
						
						
							
							Add new operator= impl  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7047  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-01 21:11:59 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e2fe664e8f 
					 
					
						
						
							
							Ok, I'm a moron.  Fixed now  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7035  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-01 17:15:11 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						985d31215c 
					 
					
						
						
							
							Fix major problem that was causing all kinds of nasty foldings  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7034  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-01 17:10:50 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						17d5d863b2 
					 
					
						
						
							
							Add new methods to BUDS for keeping track of a precise call graph  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7028  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-01 16:27:15 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a9d6566e36 
					 
					
						
						
							
							Add new method  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7007  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-06-30 05:57:30 +00:00