Chris Lattner 
							
						 
					 
					
						
						
							
						
						db6e4d6625 
					 
					
						
						
							
							Avoid inserting an entry block unless we need it  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3336  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-08-14 21:35:02 +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 
							
						 
					 
					
						
						
							
						
						446698b63d 
					 
					
						
						
							
							* Fix bug: test/Regression/Transforms/ADCE/2002-07-17-AssertionFailure.ll  
						
						... 
						
						
						
						which was caused by us not running the "drop references of dead
  instructions" code when there were no basic blocks that were dead.
  We still don't want to do some of the stuff we do if there are dead
  basic blocks, but we DO want to drop references of dead instructions,
  so we factor the common code out to a new method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3137  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-30 00:22:34 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a61fab8c6d 
					 
					
						
						
							
							Add code to ensure that no PHI nodes are left laying around with their  
						
						... 
						
						
						
						arguments dropped.  This fixes bug:
   test/Regression/Transforms/ADCE/2002-07-17-PHIAssertion.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3134  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-29 23:40:46 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						011de07117 
					 
					
						
						
							
							Fix bug: test/Regression/Transforms/ADCE/2002-07-29-Segfault.ll  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3129  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-29 22:31:39 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a59cbb2043 
					 
					
						
						
							
							* 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@3116  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-27 01:12:17 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a6275ccdf5 
					 
					
						
						
							
							* Add support for different "PassType's"  
						
						... 
						
						
						
						* Add new RegisterOpt/RegisterAnalysis templates for registering passes that
  are to show up in opt or analyze
* Register Analyses now
* Change optimizations to use RegisterOpt instead of RegisterPass
* Add support for different "PassType's"
* Add new RegisterOpt/RegisterAnalysis templates for registering passes that
  are to show up in opt or analyze
* Register Analyses now
* Change optimizations to use RegisterOpt instead of RegisterPass
* Remove getPassName implementations from various subclasses
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3113  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-26 21:12:46 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ce6ef112c4 
					 
					
						
						
							
							*** empty log message ***  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3105  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-26 18:40:14 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f629309f74 
					 
					
						
						
							
							*** empty log message ***  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3016  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-23 18:06:35 +00:00 
						 
				 
			
				
					
						
							
							
								Anand Shukla 
							
						 
					 
					
						
						
							
						
						5ba99bd124 
					 
					
						
						
							
							changes to make it compatible with 64bit gcc  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2792  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-06-25 21:07:58 +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 
							
						 
					 
					
						
						
							
						
						84369b323e 
					 
					
						
						
							
							Avoid deleting individual instructions until AFTER dead blocks have dropped  
						
						... 
						
						
						
						their references.  This fixes bug:
    test/Regression/Transforms/ADCE/2002-05-28-Crash*.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2753  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-05-28 21:38:16 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d9036a1aad 
					 
					
						
						
							
							Fix and implement ADCE to finally work!  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2720  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-05-22 21:32:16 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f016ea4ff8 
					 
					
						
						
							
							Use the new DEBUG(x) macro to allow debugging code to be enabled on the commandline  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2713  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-05-22 17:17:27 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						55547274bc 
					 
					
						
						
							
							Fix some bugs, straighten stuff out, more work needs to be done.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2600  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-05-10 15:37:35 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ea54ab9cd2 
					 
					
						
						
							
							Fix bug: test/Regression/Transforms/ADCE/2002-01-31-UseStuckAround.ll  
						
						... 
						
						
						
						Cleanup code a lot
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2547  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-05-07 22:11:39 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						022103b3f3 
					 
					
						
						
							
							Merge all individual .h files into a single Scalar.h file  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2537  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-05-07 20:03:00 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						dfe81ab87a 
					 
					
						
						
							
							Clean up ADCE by removing extraneous wrapper class  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2494  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-05-06 17:27:57 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c6f3ae5c66 
					 
					
						
						
							
							Eliminate duplicate or unneccesary #include's  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2397  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-04-29 17:42:12 +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 
							
						 
					 
					
						
						
							
						
						1b7f7dc4b4 
					 
					
						
						
							
							Eliminate the cfg namespace, moving LoopInfo, Dominators, Interval* classes  
						
						... 
						
						
						
						to the global namespace
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2370  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-04-28 16:21:30 +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 
							
						 
					 
					
						
						
							
						
						237e6d10f2 
					 
					
						
						
							
							s/Method/Function  
						
						... 
						
						
						
						Remove extraneous #includes of llvm/Assembly/Writer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2178  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-04-08 22:03:00 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bd0ef77cde 
					 
					
						
						
							
							Change over to use new style pass mechanism, now passes only expose small  
						
						... 
						
						
						
						creation functions in their public header file, unless they can help it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1816  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-02-26 21:46:54 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						455889aa79 
					 
					
						
						
							
							* Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and into  
						
						... 
						
						
						
						llvm/Support/CFG.h
* Make pred & succ iterators for intervals global functions
* Add #includes that are now neccesary because BasicBlock.h doesn't include
  InstrTypes.h anymore
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1750  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-02-12 22:39:50 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						221d688a5e 
					 
					
						
						
							
							Method.h no longer includes BasicBlock.h  
						
						... 
						
						
						
						Method::inst_* is now in llvm/Support/InstIterator.h
GraphTraits specializations for BasicBlock and Methods are now in llvm/Support/CFG.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1746  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-02-12 21:07:25 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						fcc93d2c0a 
					 
					
						
						
							
							MethodPass's are now guaranteed to not be run on external methods!  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1611  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-01-31 00:51:24 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						793c6b80d3 
					 
					
						
						
							
							Convert xforms over to new pass structure.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1605  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-01-31 00:45:11 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						699a7bfd6b 
					 
					
						
						
							
							Remove extraneous #includes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1588  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-01-26 22:47:32 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						59b6b8e0b3 
					 
					
						
						
							
							Move stuff out of the Optimizations directories into the appropriate Transforms  
						
						... 
						
						
						
						directories.  Eliminate the opt namespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1520  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-01-21 23:17:48 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						697954c15d 
					 
					
						
						
							
							Changes to build successfully with GCC 3.02  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1503  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-01-20 22:54:45 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7061dc50b2 
					 
					
						
						
							
							Split the PHINode class out from the iOther.h file into the iPHINode.h file  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1405  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-12-03 18:02:31 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						cee8f9ae67 
					 
					
						
						
							
							Create a new #include "Support/..." directory structure to move things  
						
						... 
						
						
						
						from "llvm/Support/..." that are not llvm dependant.
Move files and fix #includes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1400  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-11-27 00:03:19 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5680ee6b28 
					 
					
						
						
							
							Convert optimizations to the pass infrastructure  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@873  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-10-18 01:32:34 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b00c582b6d 
					 
					
						
						
							
							Commit more code over to new cast style  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@697  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-10-02 03:41:24 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9636a91649 
					 
					
						
						
							
							Add support for new style casts  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@694  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-10-01 16:18:37 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f0604b84c7 
					 
					
						
						
							
							Pull predecessor and successor iterators out of the CFG*.h files, and plop them into  
						
						... 
						
						
						
						the BasicBlock class where they should be.  pred_begin/pred_end become methods on BasicBlock,
and the cfg namespace isn't used anymore.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@691  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-10-01 13:19:53 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3ff4387113 
					 
					
						
						
							
							Pull iterators out of CFG.h and CFGdecls and put them in Support directory  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@664  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-09-28 22:56:31 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8a396e57ab 
					 
					
						
						
							
							ADCE is broken but at least we know why  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@656  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-09-28 00:06:42 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b8259dd93c 
					 
					
						
						
							
							Make ADCE more robust, it still has problems, but it's getting closer  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@521  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-09-09 22:26:47 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						57dbb3ad63 
					 
					
						
						
							
							Moved inline/llvm/Tools/* to include/llvm/Support/*  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@279  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-07-23 17:46:59 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						72f1e9929a 
					 
					
						
						
							
							Use the CDG to mark branches alive on demand.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-07-08 18:38:36 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d818312d09 
					 
					
						
						
							
							Update to include right file  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-07-06 16:32:07 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						02e90d59c8 
					 
					
						
						
							
							Initial checkin.  Should print dead instructions, except it doesn't do  
						
						... 
						
						
						
						control dependencies.  :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-06-30 06:39:11 +00:00