Chris Lattner 
							
						 
					 
					
						
						
							
						
						5190ce8374 
					 
					
						
						
							
							Fix two bugs:  
						
						... 
						
						
						
						* The globals vector was getting broken and unsorted, this caused vortex
   to get badly pessimized
 * Node offset handling was being handled really poorly, and in particular
   we were not merging types with offsets right.  This causes several graphs
   to be non-merged.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4699  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-12 07:20:45 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3ba8893af5 
					 
					
						
						
							
							Fix bug  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4697  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-11 22:23:56 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0ecc42619f 
					 
					
						
						
							
							Handle a mismatch between # function args and call site args  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4696  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-11 21:36:05 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e425844d8c 
					 
					
						
						
							
							Elimiante calls to a node with nothing in it.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4695  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-11 21:35:38 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a9c9c0216e 
					 
					
						
						
							
							Complete rewrite of BU code to use Tarjan's SCC finding algorithm to drive  
						
						... 
						
						
						
						the algorithm instead of hand coded depth first iteration
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4694  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-11 21:35:13 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e71ffc291c 
					 
					
						
						
							
							Mark stuff reachable by _AUX_ calls as incomplete in the BU graph  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4690  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-11 03:36:55 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8a5db46967 
					 
					
						
						
							
							Fix infinite loop in the BU algorithm.  Unfortunately this dies a serious  
						
						... 
						
						
						
						death when handling moderately sized SCC's, but what can you do
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4689  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-11 00:01:34 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6052594209 
					 
					
						
						
							
							Print the right call set size  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4688  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-11 00:01:02 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						998c49c247 
					 
					
						
						
							
							Use call site mergeWith method to simplify code  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4687  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-11 00:00:46 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d11e954f08 
					 
					
						
						
							
							Fix a bug that could trigger when varargs call sites had non-matching number of arguments  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4683  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-10 07:46:08 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						aa8146f5c4 
					 
					
						
						
							
							* Dramatically rework liveness evaluation.  
						
						... 
						
						
						
						* Implement the first step of the Globals graph: Deleting nodes from function
  graphs.  In practice, these nodes need to be moved to the globals graph, but
  this will be taken care of later.  Note that the graphs computed right now are
  not strictly correct!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4681  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-10 06:59:55 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4f7815f684 
					 
					
						
						
							
							Honor the shouldPrintAuxCalls flag  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4678  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-10 06:53:59 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2a06886759 
					 
					
						
						
							
							Initialize PrintAuxCalls member  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4677  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-10 06:53:38 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a1079051d8 
					 
					
						
						
							
							* Bottom-Up graphs print the Aux call vector  
						
						... 
						
						
						
						* Significantly improve DEBUG output
* Aggressively fold calls together if we inlined a graph that provides
  call nodes.
* Add a bailout if the current graph has over 200 call nodes in it, this is
  a really whacky case that should never happen.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4675  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-10 06:52:47 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f40f0a39bd 
					 
					
						
						
							
							eliminate the ability to remove global nodes from deadNodeElminate... for now.  
						
						... 
						
						
						
						This slows stuff down a bit, but it should get much better before it gets any
worse.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4666  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-09 22:07:02 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						dd398486ca 
					 
					
						
						
							
							Remove obsolete code  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4665  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-09 21:41:44 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f76e754c2e 
					 
					
						
						
							
							Fix logic  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4664  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-09 21:40:58 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						aa0b468f6d 
					 
					
						
						
							
							Add globals graphs to all three passes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4663  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-09 21:12:07 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7900ed146f 
					 
					
						
						
							
							Move maskNodeTypes to header file  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4661  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-09 21:02:26 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						65f2897f2c 
					 
					
						
						
							
							Clean up DSGraph::removeDeadNodes interface  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4660  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-09 21:00:49 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						96517253a1 
					 
					
						
						
							
							Make removeTriviallyDeadNodes a private interface of DSGraph  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4659  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-09 20:55:24 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2cfbaaf3b9 
					 
					
						
						
							
							Don't put constants into the scalar map!  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4657  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-09 20:14:03 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2e4f9bf86e 
					 
					
						
						
							
							Add initial support for a globals graph  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4656  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-09 20:01:01 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d888893a54 
					 
					
						
						
							
							Tighten up array handling  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4655  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-09 19:25:27 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0779ba6c47 
					 
					
						
						
							
							#include Datastructure.h first  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4654  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-09 19:25:10 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bf10f05bf7 
					 
					
						
						
							
							Fix warning & release build  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4648  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-09 00:49:05 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						23f83dce3f 
					 
					
						
						
							
							Fold arrays down to a single element.  This causes huge wins on some benchmarks  
						
						... 
						
						
						
						for example: 197.parser (64M->14M), 164.gzip (14M->2.7M).  The actual graphs
represented should not change at all.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4643  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-08 22:49:57 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						70925b0569 
					 
					
						
						
							
							ONLY merge in the aux call sites, this causes a HUGE speedup  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4640  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-08 22:27:25 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						acf491f0b4 
					 
					
						
						
							
							Allow specification of whether the call sites should be copied, AND whether  
						
						... 
						
						
						
						the aux call sites should be copied
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4639  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-08 22:27:09 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ce2d1328fc 
					 
					
						
						
							
							Reenable 'quick exit' case  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4638  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-08 22:26:43 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7cc9875c9d 
					 
					
						
						
							
							Reduce amount of work needed to compute ip/modref  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4637  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-08 22:17:01 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7a21163cef 
					 
					
						
						
							
							Reimplement TD pass completely it now works  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4635  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-08 21:28:37 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						01fb0c75aa 
					 
					
						
						
							
							Cannot modify original call sites vector  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4634  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-08 21:27:37 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						679e8e1b19 
					 
					
						
						
							
							- Add a bunch of checking to make sure that dead nodes are not used after they  
						
						... 
						
						
						
						are marked DEAD.  This helped track down some bugs
- Fix a bunch of bugs where we were doing work on nodes after they became dead
- Add support for aux function call sites
- Add support for not cloning call sites
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4633  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-08 21:27:12 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1a948a8269 
					 
					
						
						
							
							Remove gunk used by broken TD pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4632  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-08 21:25:24 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d321593330 
					 
					
						
						
							
							Fix IPModRef to use new DS interface  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4628  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-08 19:13:14 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f8c6aab05e 
					 
					
						
						
							
							Use DSNodeHandleMap instead to be safe  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4622  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-08 05:01:14 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5134006f93 
					 
					
						
						
							
							* actually handle constants (especially constantexprs) correctly.  
						
						... 
						
						
						
						- This seems to dramatically improve many benchmarks, only slowing down
    gzip significantly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4621  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-08 05:00:44 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						33312f7031 
					 
					
						
						
							
							Add flush  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4619  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-08 01:21:07 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ed8e6499dd 
					 
					
						
						
							
							Implement ResolveCallSiteModRefInfo for IPModRef.  computeModRef is not yet done though!  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4602  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-07 07:12:23 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						460ea29b45 
					 
					
						
						
							
							Instead of using a bool that constant has to be explained, use a self  
						
						... 
						
						
						
						explanitory enum instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4600  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-07 07:06:20 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						076c1f923b 
					 
					
						
						
							
							Implement a new mergeInGraph method, which basically factors code out of  
						
						... 
						
						
						
						the BU class.
This will be used by the IPModRef class to do stuff, eventually perhaps the
TD pass will use it also.
Speaking of the TD pass, this also eliminates the self recursive case, which
was broken, and couldn't occur anyway.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4599  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-07 06:31:54 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b10604341f 
					 
					
						
						
							
							Rename DataStructureAnalysis namespace to DS  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4596  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-07 05:20:53 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e83cb5316b 
					 
					
						
						
							
							Fix problem with dangling referrers  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4595  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-07 05:00:35 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f17b39ab2a 
					 
					
						
						
							
							Minor bugfix to enable generation of methcall.llvm.lib, objinst.llvm.lib, and  
						
						... 
						
						
						
						The problem was merging two unsized types like function's, ie int (int*) with
int (uint *)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4594  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-07 04:59:28 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1421233dc1 
					 
					
						
						
							
							Compute total number of nodes and # call nodes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4592  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-07 02:18:46 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3c87b29985 
					 
					
						
						
							
							Move printouts to be wrapped in DEBUG() macros  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4588  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-07 01:54:56 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						95a80adc23 
					 
					
						
						
							
							When the -only-print-main-ds option is specified, still print out graph size  
						
						... 
						
						
						
						statistics for skipped functions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4587  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-07 01:54:44 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4476ceb414 
					 
					
						
						
							
							Allow the ResolveCallSiteModRefInfo method to return a mapping of nodes,  
						
						... 
						
						
						
						implement the mod/ref bit masking
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4578  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-06 19:59:33 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						268748a0d8 
					 
					
						
						
							
							Add a stub to implement the context sensitive mod/ref info for call sites  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4577  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-06 19:38:43 +00:00