0ab5e2cded 
								
							 
						 
						
							
							
								
								Fix a ton of comment typos found by codespell.  Patch by  
							
							... 
							
							
							
							Luis Felipe Strano Moraes!
llvm-svn: 129558 
							
						 
						
							2011-04-15 05:18:47 +00:00  
				
					
						
							
							
								 
						
							
								6c18d1aac0 
								
							 
						 
						
							
							
								
								Get rid of static constructors for pass registration.  Instead, every pass exposes an initializeMyPassFunction(), which  
							
							... 
							
							
							
							must be called in the pass's constructor.  This function uses static dependency declarations to recursively initialize
the pass's dependencies.
Clients that only create passes through the createFooPass() APIs will require no changes.  Clients that want to use the
CommandLine options for passes will need to manually call the appropriate initialization functions in PassInitialization.h
before parsing commandline arguments.
I have tested this with all standard configurations of clang and llvm-gcc on Darwin.  It is possible that there are problems
with the static dependencies that will only be visible with non-standard options.  If you encounter any crash in pass
registration/creation, please send the testcase to me directly.
llvm-svn: 116820 
							
						 
						
							2010-10-19 17:21:58 +00:00  
				
					
						
							
							
								 
						
							
								8ac477ffb5 
								
							 
						 
						
							
							
								
								Begin adding static dependence information to passes, which will allow us to  
							
							... 
							
							
							
							perform initialization without static constructors AND without explicit initialization
by the client.  For the moment, passes are required to initialize both their
(potential) dependencies and any passes they preserve.  I hope to be able to relax
the latter requirement in the future.
llvm-svn: 116334 
							
						 
						
							2010-10-12 19:48:12 +00:00  
				
					
						
							
							
								 
						
							
								df7a4f2515 
								
							 
						 
						
							
							
								
								Now with fewer extraneous semicolons!  
							
							... 
							
							
							
							llvm-svn: 115996 
							
						 
						
							2010-10-07 22:25:06 +00:00  
				
					
						
							
							
								 
						
							
								d31d82d75c 
								
							 
						 
						
							
							
								
								Now that PassInfo and Pass::ID have been separated, move the rest of the passes over to the new registration API.  
							
							... 
							
							
							
							llvm-svn: 111815 
							
						 
						
							2010-08-23 17:52:01 +00:00  
				
					
						
							
							
								 
						
							
								a7aed18624 
								
							 
						 
						
							
							
								
								Reapply r110396, with fixes to appease the Linux buildbot gods.  
							
							... 
							
							
							
							llvm-svn: 110460 
							
						 
						
							2010-08-06 18:33:48 +00:00  
				
					
						
							
							
								 
						
							
								bda59bd247 
								
							 
						 
						
							
							
								
								Revert r110396 to fix buildbots.  
							
							... 
							
							
							
							llvm-svn: 110410 
							
						 
						
							2010-08-06 00:23:35 +00:00  
				
					
						
							
							
								 
						
							
								755aceb5d0 
								
							 
						 
						
							
							
								
								Don't use PassInfo* as a type identifier for passes.  Instead, use the address of the static  
							
							... 
							
							
							
							ID member as the sole unique type identifier.  Clean up APIs related to this change.
llvm-svn: 110396 
							
						 
						
							2010-08-05 23:42:04 +00:00  
				
					
						
							
							
								 
						
							
								c08e5df836 
								
							 
						 
						
							
							
								
								performance: cache the dereferenced use_iterator  
							
							... 
							
							
							
							llvm-svn: 101253 
							
						 
						
							2010-04-14 16:48:56 +00:00  
				
					
						
							
							
								 
						
							
								c78d720f02 
								
							 
						 
						
							
							
								
								rename use_const_iterator to const_use_iterator for consistency's sake  
							
							... 
							
							
							
							llvm-svn: 99564 
							
						 
						
							2010-03-25 23:06:16 +00:00  
				
					
						
							
							
								 
						
							
								09a79dcfdf 
								
							 
						 
						
							
							
								
								clean up this code a bit.  
							
							... 
							
							
							
							llvm-svn: 80767 
							
						 
						
							2009-09-02 06:15:37 +00:00  
				
					
						
							
							
								 
						
							
								2dd09dbdf7 
								
							 
						 
						
							
							
								
								eliminate VISIBILITY_HIDDEN from Transforms/Scalar.  PR4861  
							
							... 
							
							
							
							llvm-svn: 80766 
							
						 
						
							2009-09-02 06:11:42 +00:00  
				
					
						
							
							
								 
						
							
								55f1c09e31 
								
							 
						 
						
							
							
								
								Push LLVMContexts through the IntegerType APIs.  
							
							... 
							
							
							
							llvm-svn: 78948 
							
						 
						
							2009-08-13 21:58:54 +00:00  
				
					
						
							
							
								 
						
							
								5a1acd9912 
								
							 
						 
						
							
							
								
								Move a few more APIs back to 2.5 forms.  The only remaining ones left to change back are  
							
							... 
							
							
							
							metadata related, which I'm waiting on to avoid conflicting with Devang.
llvm-svn: 77721 
							
						 
						
							2009-07-31 20:28:14 +00:00  
				
					
						
							
							
								 
						
							
								47db941fd3 
								
							 
						 
						
							
							
								
								Get rid of the Pass+Context magic.  
							
							... 
							
							
							
							llvm-svn: 76702 
							
						 
						
							2009-07-22 00:24:57 +00:00  
				
					
						
							
							
								 
						
							
								4fdeba9706 
								
							 
						 
						
							
							
								
								Revert yesterday's change by removing the LLVMContext parameter to AllocaInst and MallocInst.  
							
							... 
							
							
							
							llvm-svn: 75863 
							
						 
						
							2009-07-15 23:53:25 +00:00  
				
					
						
							
							
								 
						
							
								b6b2530000 
								
							 
						 
						
							
							
								
								Move EVER MORE stuff over to LLVMContext.  
							
							... 
							
							
							
							llvm-svn: 75703 
							
						 
						
							2009-07-14 23:09:55 +00:00  
				
					
						
							
							
								 
						
							
								340288c621 
								
							 
						 
						
							
							
								
								Even more passes being LLVMContext'd.  
							
							... 
							
							
							
							llvm-svn: 74781 
							
						 
						
							2009-07-03 19:42:02 +00:00  
				
					
						
							
							
								 
						
							
								a79db30d28 
								
							 
						 
						
							
							
								
								Tidy up several unbeseeming casts from pointer to intptr_t.  
							
							... 
							
							
							
							llvm-svn: 55779 
							
						 
						
							2008-09-04 17:05:41 +00:00  
				
					
						
							
							
								 
						
							
								e1f6e4b21d 
								
							 
						 
						
							
							
								
								API change for {BinaryOperator|CmpInst|CastInst}::create*() --> Create. Legacy interfaces will be in place for some time.  (Merge from use-diet branch.)  
							
							... 
							
							
							
							llvm-svn: 51200 
							
						 
						
							2008-05-16 19:29:10 +00:00  
				
					
						
							
							
								 
						
							
								0479aa5c0b 
								
							 
						 
						
							
							
								
								Change class' public PassInfo variables to by initialized with the  
							
							... 
							
							
							
							address of the PassInfo directly instead of calling getPassInfo.
This eliminates a bunch of dynamic initializations of static data.
Also, fold RegisterPassBase into PassInfo, make a bunch of its
data members const, and rearrange some code to initialize data
members in constructors instead of using setter member functions.
llvm-svn: 51022 
							
						 
						
							2008-05-13 02:05:11 +00:00  
				
					
						
							
							
								 
						
							
								d78c400b5b 
								
							 
						 
						
							
							
								
								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.
llvm-svn: 51017 
							
						 
						
							2008-05-13 00:00:25 +00:00  
				
					
						
							
							
								 
						
							
								f3ebc3f3d2 
								
							 
						 
						
							
							
								
								Remove attribution from file headers, per discussion on llvmdev.  
							
							... 
							
							
							
							llvm-svn: 45418 
							
						 
						
							2007-12-29 20:36:04 +00:00  
				
					
						
							
							
								 
						
							
								7499a3b092 
								
							 
						 
						
							
							
								
								Reg2Mem cleanup and optimizations:  
							
							... 
							
							
							
							- enable phi instructions demotion to stack
 - create alloca instructions in the entry block
llvm-svn: 43208 
							
						 
						
							2007-10-21 23:05:16 +00:00  
				
					
						
							
							
								 
						
							
								e7da2d6ac3 
								
							 
						 
						
							
							
								
								Fix typo in comment.  
							
							... 
							
							
							
							llvm-svn: 36873 
							
						 
						
							2007-05-06 13:37:16 +00:00  
				
					
						
							
							
								 
						
							
								361e981415 
								
							 
						 
						
							
							
								
								wrap long lines  
							
							... 
							
							
							
							llvm-svn: 36807 
							
						 
						
							2007-05-05 22:32:24 +00:00  
				
					
						
							
							
								 
						
							
								8c78a0bff0 
								
							 
						 
						
							
							
								
								Drop 'const'  
							
							... 
							
							
							
							llvm-svn: 36662 
							
						 
						
							2007-05-03 01:11:54 +00:00  
				
					
						
							
							
								 
						
							
								e95c6ad802 
								
							 
						 
						
							
							
								
								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.
llvm-svn: 36652 
							
						 
						
							2007-05-02 21:39:20 +00:00  
				
					
						
							
							
								 
						
							
								09f162ca6a 
								
							 
						 
						
							
							
								
								Do not use typeinfo to identify pass in pass manager.  
							
							... 
							
							
							
							llvm-svn: 36632 
							
						 
						
							2007-05-01 21:15:47 +00:00  
				
					
						
							
							
								 
						
							
								fb80151c42 
								
							 
						 
						
							
							
								
								Removed tabs everywhere except autogenerated & external files. Add make  
							
							... 
							
							
							
							target for tabs checking.
llvm-svn: 36146 
							
						 
						
							2007-04-16 18:10:23 +00:00  
				
					
						
							
							
								 
						
							
								557ab15e71 
								
							 
						 
						
							
							
								
								Apply the VISIBILITY_HIDDEN field to the remaining anonymous classes in  
							
							... 
							
							
							
							the Transforms library. This reduces debug library size by 132 KB, debug
binary size by 376 KB, and reduces link time for llvm tools slightly.
llvm-svn: 33939 
							
						 
						
							2007-02-05 23:32:05 +00:00  
				
					
						
							
							
								 
						
							
								5301e7c605 
								
							 
						 
						
							
							
								
								For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoid  
							
							... 
							
							
							
							confusion with external linkage types.
llvm-svn: 33663 
							
						 
						
							2007-01-30 20:08:39 +00:00  
				
					
						
							
							
								 
						
							
								79a42ac941 
								
							 
						 
						
							
							
								
								Switch over Transforms/Scalar to use the STATISTIC macro.  For each statistic  
							
							... 
							
							
							
							converted, we lose a static initializer.  This also allows GCC to emit warnings
about unused statistics.
llvm-svn: 32690 
							
						 
						
							2006-12-19 21:40:18 +00:00  
				
					
						
							
							
								 
						
							
								700b873130 
								
							 
						 
						
							
							
								
								Detemplatize the Statistic class.  The only type it is instantiated with  
							
							... 
							
							
							
							is 'unsigned'.
llvm-svn: 32279 
							
						 
						
							2006-12-06 17:46:33 +00:00  
				
					
						
							
							
								 
						
							
								c2d3d3112e 
								
							 
						 
						
							
							
								
								eliminate RegisterOpt.  It does the same thing as RegisterPass.  
							
							... 
							
							
							
							llvm-svn: 29925 
							
						 
						
							2006-08-27 22:42:52 +00:00  
				
					
						
							
							
								 
						
							
								5fc3794e71 
								
							 
						 
						
							
							
								
								since reg2mem requires it, might as well mention that it preserves it  
							
							... 
							
							
							
							llvm-svn: 24491 
							
						 
						
							2005-11-25 16:04:54 +00:00  
				
					
						
							
							
								 
						
							
								061029dee2 
								
							 
						 
						
							
							
								
								Reg2Mem is something a pass may depend on, so allow that  
							
							... 
							
							
							
							llvm-svn: 24488 
							
						 
						
							2005-11-22 22:14:23 +00:00  
				
					
						
							
							
								 
						
							
								71b09bbb07 
								
							 
						 
						
							
							
								
								turns out, demotion and invokes and critical edges don't mix  
							
							... 
							
							
							
							llvm-svn: 24487 
							
						 
						
							2005-11-22 21:45:19 +00:00  
				
					
						
							
							
								 
						
							
								d9c13b1336 
								
							 
						 
						
							
							
								
								the pain isn't gone unless the phinodes are spilled too  
							
							... 
							
							
							
							llvm-svn: 24288 
							
						 
						
							2005-11-10 19:39:09 +00:00  
				
					
						
							
							
								 
						
							
								8e66c0c8a9 
								
							 
						 
						
							
							
								
								this works with backedges to the existing entry block alot better  
							
							... 
							
							
							
							llvm-svn: 24270 
							
						 
						
							2005-11-10 17:35:34 +00:00  
				
					
						
							
							
								 
						
							
								4130a4f061 
								
							 
						 
						
							
							
								
								The pass everyone has been waiting for!  
							
							... 
							
							
							
							Reg2Mem
for fun you can opt -reg2mem -mem2reg
llvm-svn: 24267 
							
						 
						
							2005-11-10 01:58:38 +00:00