Devang Patel 
							
						 
					 
					
						
						
							
						
						c0c33f5e2c 
					 
					
						
						
							
							"Unable to schedule <A> required by <B>" is more helpful then  
						
						... 
						
						
						
						"Unable to handle Pass that requires lower level Analysis pass"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51892  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-03 01:20:02 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						e62f750784 
					 
					
						
						
							
							Add debugging aid.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51891  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-03 01:02:16 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						844731a7f1 
					 
					
						
						
							
							Clean up the use of static and anonymous namespaces. This turned up  
						
						... 
						
						
						
						several things that were neither in an anonymous namespace nor static
but not intended to be global.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51017  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-05-13 00:00:25 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						bed7e68498 
					 
					
						
						
							
							Keep track of analysis information inherited from Module pass manager.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48576  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-20 01:09:53 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						b9c432fe77 
					 
					
						
						
							
							#if 1  .. #endif markers do not add any value.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48560  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-19 22:24:25 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						c758209153 
					 
					
						
						
							
							PassInfo keep tracks whether a pass is an analysis pass or not.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48554  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-19 21:56:59 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						c7fe32e840 
					 
					
						
						
							
							Do not use virtual function to identify an analysis pass.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48520  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-19 00:48:41 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						1cee94f041 
					 
					
						
						
							
							Identify Analysis pass.  
						
						... 
						
						
						
						Do not run analysis pass again if analysis info is still available.
This fixes PR1441.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48476  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-18 00:39:19 +00:00 
						 
				 
			
				
					
						
							
							
								Gordon Henriksen 
							
						 
					 
					
						
						
							
						
						d78c0f5a72 
					 
					
						
						
							
							C and Objective Caml bindings for PassManagers.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48413  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-16 04:20:44 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						59ef015c65 
					 
					
						
						
							
							Eliminate a few unnecessary uses of dynamic_cast.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48318  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-13 02:08:36 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						9769cee9f7 
					 
					
						
						
							
							Fix a typo.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48317  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-13 01:58:48 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						5fe6e33ef8 
					 
					
						
						
							
							Don't redundantly clear std::vector members in destructors.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48316  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-13 01:57:34 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						0961ec1afe 
					 
					
						
						
							
							Change PMTopLevelManager's PassManagers vector element type from  
						
						... 
						
						
						
						Pass* to PMDataManager*. PMDataManager is more specific than Pass,
so this more accurately describes the objects that are being stored.
This eliminates the need for several dynamic_casts to PMDataManager*.
It does introduce one dynamic_cast though, in dumpPasses(). Give
this one a comment describing why a dynamic_cast is being used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48315  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-13 01:48:32 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						c2f12ab5e5 
					 
					
						
						
							
							Change PMStack::push to accept a PMDataManager* instead of  
						
						... 
						
						
						
						a Pass*. PMDataManager* is what it actually holds, so this
makes it clearer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48314  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-13 01:21:31 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						580b89992f 
					 
					
						
						
							
							Give PassManager and FunctionPassManager a common base class, with  
						
						... 
						
						
						
						add(Pass *) as a pure virtual member function. This will allow all
the various addPassesTo* functions in LLVM to avoid hard-coding what
type of PassManager is used. 
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48226  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-11 16:41:42 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						b4b28231f7 
					 
					
						
						
							
							Fix typos in comments.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48225  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-11 16:18:48 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						26c22cfbcd 
					 
					
						
						
							
							Remove dead code.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47700  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-02-27 23:33:51 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						1cf47cb217 
					 
					
						
						
							
							Add comment explaining what is lower level analysis pass.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46658  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-02-02 01:43:30 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						97cf759b82 
					 
					
						
						
							
							Fix 80-col violations.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46510  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-01-29 12:09:55 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4ee451de36 
					 
					
						
						
							
							Remove attribution from file headers, per discussion on llvmdev.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45418  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-29 20:36:04 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						cdf2b3b2f8 
					 
					
						
						
							
							Add explicit keywords.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42747  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-08 15:08:41 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						2bb7d0647e 
					 
					
						
						
							
							Fix a  using namespace llvm;  in a header file.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42584  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-10-03 19:04:09 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						6b4af744b8 
					 
					
						
						
							
							Do not overuse std::string.  Pass around char * directly.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41001  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-08-10 18:29:32 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						fc23bc799d 
					 
					
						
						
							
							minor simplifications.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40981  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-08-10 06:22:25 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						417efc897b 
					 
					
						
						
							
							avoid copying strings.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40980  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-08-10 06:17:04 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						209ee187c9 
					 
					
						
						
							
							Fix pastos in comments for doFinalization functions.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40588  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-07-30 14:51:13 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						19fe8f907e 
					 
					
						
						
							
							Add facility to dump pass manager structure  
						
						... 
						
						
						
						to make it easier to understand failure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40567  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-07-27 20:06:09 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						edbef38067 
					 
					
						
						
							
							Use SmallVector instead of std::vector.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40109  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-07-20 18:04:54 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						58e0ef1e90 
					 
					
						
						
							
							Verify loop info.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40062  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-07-19 18:02:32 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						9750b5d577 
					 
					
						
						
							
							Set up ground work to verify preserved analysis info.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40039  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-07-19 05:36:09 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						b42295df4d 
					 
					
						
						
							
							Fix memory leak.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38469  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-07-09 20:52:39 +00:00 
						 
				 
			
				
					
						
							
							
								Gabor Greif 
							
						 
					 
					
						
						
							
						
						a99be51bf5 
					 
					
						
						
							
							Here is the bulk of the sanitizing.  
						
						... 
						
						
						
						Almost all occurrences of "bytecode" in the sources have been eliminated.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37913  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-07-05 17:07:56 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						7d97bf1429 
					 
					
						
						
							
							Fix quotes in debug messages.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37630  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-06-18 21:32:29 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						b3b87708eb 
					 
					
						
						
							
							If user wants to run instcombine twice, do not block it.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37301  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-05-23 05:08:52 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						1997473cf7 
					 
					
						
						
							
							Drop 'const'  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36662  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-05-03 01:11:54 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						3e15bf33e0 
					 
					
						
						
							
							Use 'static const char' instead of 'static const int'.  
						
						... 
						
						
						
						Due to darwin gcc bug, one version of darwin linker coalesces
static const int, which defauts PassID based pass identification.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36652  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-05-02 21:39:20 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						794fd75c67 
					 
					
						
						
							
							Do not use typeinfo to identify pass in pass manager.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36632  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-05-01 21:15:47 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						dfa1ec3bc2 
					 
					
						
						
							
							Use toplevel function pass manager as OnTheFly manager.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36481  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-04-26 17:50:19 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						6b1df0e863 
					 
					
						
						
							
							Proivde  getAnalysis<FPAnalysis>(Func) support.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36159  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-04-16 20:56:24 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						f4bd76a035 
					 
					
						
						
							
							Do not assert during analysis implementation initialization.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36158  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-04-16 20:44:16 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						693941bb6e 
					 
					
						
						
							
							Print and delete on the fly pass managers.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36157  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-04-16 20:39:59 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						0ed8df38c2 
					 
					
						
						
							
							Update module pass manager to support module passes that require  
						
						... 
						
						
						
						function passes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36154  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-04-16 20:27:05 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						569a6fd9d5 
					 
					
						
						
							
							Give each pass manager chance to manage lower level analysis pass, which is  
						
						... 
						
						
						
						pass required by one of pass managed by the manager.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36153  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-04-16 20:12:57 +00:00 
						 
				 
			
				
					
						
							
							
								Anton Korobeynikov 
							
						 
					 
					
						
						
							
						
						bed2946a96 
					 
					
						
						
							
							Removed tabs everywhere except autogenerated & external files. Add make  
						
						... 
						
						
						
						target for tabs checking.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36146  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-04-16 18:10:23 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						d46825c6a1 
					 
					
						
						
							
							Speed Up Pass Manager.  
						
						... 
						
						
						
						- Check Immutableness before searching PreservedSet.
- Avoid unnecessary traversal while setting Last User.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35028  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-03-08 19:05:01 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						7b65dd91c1 
					 
					
						
						
							
							Keep track of higher level analysis.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34974  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-03-06 17:52:53 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						fe613905b3 
					 
					
						
						
							
							Keep track of inherited analysis. For example, if a loop pass does not  
						
						... 
						
						
						
						preserve dominator info then it should update parent FPPassManager's
available analysis info to reflect this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34942  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-03-06 01:55:46 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						22a1cf9d3a 
					 
					
						
						
							
							Add preparePassManager() hook. This allows each pass to check whether  
						
						... 
						
						
						
						current active pass manager is appropriate or not.
A loop pass may consider current LPPassManager in appropraite if loop
pass is not preserving analysis information that is used by other
passes managed by current LPPassManager. In such situation, loop pass
can pop current LPPassManager from the PMStack using this  hook
and use new LPPassManager for itself.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34941  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-03-06 01:06:16 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						cf5fb2b614 
					 
					
						
						
							
							Current pass manager, not the parent pass manager,  assumes the role of  
						
						... 
						
						
						
						last user when one of the managed pass uses info provided by parent pass
manager.
This was exposed by LPPassManager work.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34936  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-03-05 22:57:49 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						7f99761143 
					 
					
						
						
							
							Avoid constructing std::strings unless pass debugging is ON.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34933  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-03-05 20:01:30 +00:00