582c53d147 
								
							 
						 
						
							
							
								
								Teach the internalize pass to also internalize  
							
							... 
							
							
							
							global aliases.
llvm-svn: 61754 
							
						 
						
							2009-01-05 21:24:45 +00:00  
				
					
						
							
							
								 
						
							
								d24b93f339 
								
							 
						 
						
							
							
								
								Remove trailing spaces.  
							
							... 
							
							
							
							llvm-svn: 61743 
							
						 
						
							2009-01-05 20:38:27 +00:00  
				
					
						
							
							
								 
						
							
								3a813a5d3f 
								
							 
						 
						
							
							
								
								Teach internalize to preserve the callgraph.  
							
							... 
							
							
							
							Why?  Because it was there!
llvm-svn: 56996 
							
						 
						
							2008-10-03 07:36:09 +00:00  
				
					
						
							
							
								 
						
							
								96740aad86 
								
							 
						 
						
							
							
								
								revert the addition of Preverves(CallGraph), per Duncan's comments  
							
							... 
							
							
							
							llvm-svn: 56917 
							
						 
						
							2008-10-01 09:13:40 +00:00  
				
					
						
							
							
								 
						
							
								5093ab4c76 
								
							 
						 
						
							
							
								
								add preserversCFG() + preservers(CallGraph)  
							
							... 
							
							
							
							llvm-svn: 56887 
							
						 
						
							2008-09-30 22:04:30 +00:00  
				
					
						
							
							
								 
						
							
								a79db30d28 
								
							 
						 
						
							
							
								
								Tidy up several unbeseeming casts from pointer to intptr_t.  
							
							... 
							
							
							
							llvm-svn: 55779 
							
						 
						
							2008-09-04 17:05:41 +00:00  
				
					
						
							
							
								 
						
							
								19a6469e1b 
								
							 
						 
						
							
							
								
								Rename a few variables to be more consistent.  
							
							... 
							
							
							
							llvm-svn: 52672 
							
						 
						
							2008-06-24 09:14:10 +00:00  
				
					
						
							
							
								 
						
							
								f2763e233e 
								
							 
						 
						
							
							
								
								Simplify internalize pass. Add test case.  
							
							... 
							
							
							
							Patch by Matthijs Kooijman!
llvm-svn: 51114 
							
						 
						
							2008-05-14 20:01:01 +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  
				
					
						
							
							
								 
						
							
								6a2da37c0e 
								
							 
						 
						
							
							
								
								Make several variable declarations static.  
							
							... 
							
							
							
							llvm-svn: 50696 
							
						 
						
							2008-05-06 01:53:16 +00:00  
				
					
						
							
							
								 
						
							
								f3ebc3f3d2 
								
							 
						 
						
							
							
								
								Remove attribution from file headers, per discussion on llvmdev.  
							
							... 
							
							
							
							llvm-svn: 45418 
							
						 
						
							2007-12-29 20:36:04 +00:00  
				
					
						
							
							
								 
						
							
								30f65fe4a7 
								
							 
						 
						
							
							
								
								Fix PR1719, by not marking llvm.global.annotations internal.  
							
							... 
							
							
							
							llvm-svn: 42578 
							
						 
						
							2007-10-03 17:05:40 +00:00  
				
					
						
							
							
								 
						
							
								d66e0cd6c0 
								
							 
						 
						
							
							
								
								Fix PR1719, by not marking llvm.noinline internal.  
							
							... 
							
							
							
							llvm-svn: 42565 
							
						 
						
							2007-10-03 03:59:15 +00:00  
				
					
						
							
							
								 
						
							
								34d442f274 
								
							 
						 
						
							
							
								
								More explicit keywords.  
							
							... 
							
							
							
							llvm-svn: 40673 
							
						 
						
							2007-08-01 15:32:29 +00:00  
				
					
						
							
							
								 
						
							
								34404e3247 
								
							 
						 
						
							
							
								
								simplify this code and fix PR1493, now that llvm-gcc3 is dead.  
							
							... 
							
							
							
							llvm-svn: 37478 
							
						 
						
							2007-06-06 20:51:41 +00:00  
				
					
						
							
							
								 
						
							
								e7da2d6ac3 
								
							 
						 
						
							
							
								
								Fix typo in comment.  
							
							... 
							
							
							
							llvm-svn: 36873 
							
						 
						
							2007-05-06 13:37:16 +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  
				
					
						
							
							
								 
						
							
								1241d6d5ab 
								
							 
						 
						
							
							
								
								For PR411:  
							
							... 
							
							
							
							Adjust to changes in Module interface:
getMainFunction() -> getFunction("main")
getNamedFunction(X) -> getFunction(X)
llvm-svn: 33922 
							
						 
						
							2007-02-05 21:19:13 +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  
				
					
						
							
							
								 
						
							
								c56315c2b5 
								
							 
						 
						
							
							
								
								Change the MachineDebugInfo to MachineModuleInfo to better reflect usage  
							
							... 
							
							
							
							for debugging and exception handling.
llvm-svn: 33550 
							
						 
						
							2007-01-26 21:22:28 +00:00  
				
					
						
							
							
								 
						
							
								1631bcb1d4 
								
							 
						 
						
							
							
								
								Eliminate static ctors due to Statistic objects  
							
							... 
							
							
							
							llvm-svn: 32693 
							
						 
						
							2006-12-19 22:09:18 +00:00  
				
					
						
							
							
								 
						
							
								f3baad3ee1 
								
							 
						 
						
							
							
								
								Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, are  
							
							... 
							
							
							
							now cerr, cout, and NullStream resp.
llvm-svn: 32298 
							
						 
						
							2006-12-07 01:30:32 +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  
				
					
						
							
							
								 
						
							
								8f13b5c43e 
								
							 
						 
						
							
							
								
								Replace #include <iostream> with llvm_* streams.  
							
							... 
							
							
							
							llvm-svn: 31924 
							
						 
						
							2006-11-26 10:02:32 +00:00  
				
					
						
							
							
								 
						
							
								fab4972a6e 
								
							 
						 
						
							
							
								
								Initialize DontInternalize.  
							
							... 
							
							
							
							llvm-svn: 30281 
							
						 
						
							2006-09-13 01:02:26 +00:00  
				
					
						
							
							
								 
						
							
								c2d3d3112e 
								
							 
						 
						
							
							
								
								eliminate RegisterOpt.  It does the same thing as RegisterPass.  
							
							... 
							
							
							
							llvm-svn: 29925 
							
						 
						
							2006-08-27 22:42:52 +00:00  
				
					
						
							
							
								 
						
							
								edd2f9952e 
								
							 
						 
						
							
							
								
								Make it fit into 80 cols.  
							
							... 
							
							
							
							llvm-svn: 29223 
							
						 
						
							2006-07-20 18:03:39 +00:00  
				
					
						
							
							
								 
						
							
								839d9260f0 
								
							 
						 
						
							
							
								
								Add new constructor to accept vector of exported names while creating  
							
							... 
							
							
							
							InternalizePass.
llvm-svn: 29222 
							
						 
						
							2006-07-20 17:48:05 +00:00  
				
					
						
							
							
								 
						
							
								69effa2325 
								
							 
						 
						
							
							
								
								Switch to using a numeric id for anchors.  
							
							... 
							
							
							
							llvm-svn: 26598 
							
						 
						
							2006-03-07 20:53:47 +00:00  
				
					
						
							
							
								 
						
							
								c597b8a55e 
								
							 
						 
						
							
							
								
								Make iostream #inclusion explicit  
							
							... 
							
							
							
							llvm-svn: 25514 
							
						 
						
							2006-01-22 23:32:06 +00:00  
				
					
						
							
							
								 
						
							
								7be2203c9f 
								
							 
						 
						
							
							
								
								If not internalizing, don't mark llvm.global[cd]tors const, as a fix for a  
							
							... 
							
							
							
							hypothetical future boog.
llvm-svn: 25430 
							
						 
						
							2006-01-19 00:46:54 +00:00  
				
					
						
							
							
								 
						
							
								d693b7943a 
								
							 
						 
						
							
							
								
								Don't internalize llvm.global[cd]tor unless there are uses of it.  This  
							
							... 
							
							
							
							unbreaks front-ends that don't use __main (like the new CFE).
llvm-svn: 25429 
							
						 
						
							2006-01-19 00:40:39 +00:00  
				
					
						
							
							
								 
						
							
								8cdc773748 
								
							 
						 
						
							
							
								
								Pull inline methods out of the pass class definition to make it easier to  
							
							... 
							
							
							
							read the code.
Do not internalize debugger anchors.
llvm-svn: 25067 
							
						 
						
							2006-01-03 19:13:17 +00:00  
				
					
						
							
							
								 
						
							
								165998207e 
								
							 
						 
						
							
							
								
								Wrap a long line, never internalize llvm.used.  
							
							... 
							
							
							
							llvm-svn: 24602 
							
						 
						
							2005-12-05 05:07:38 +00:00  
				
					
						
							
							
								 
						
							
								45517baf9f 
								
							 
						 
						
							
							
								
								Add an option to this pass.  If it is set, we are allowed to internalize  
							
							... 
							
							
							
							all but main.  If it's not set, we can still internalize, but only if an
explicit symbol list is provided.
llvm-svn: 23783 
							
						 
						
							2005-10-18 06:29:22 +00:00  
				
					
						
							
							
								 
						
							
								b1c9317bb4 
								
							 
						 
						
							
							
								
								Remove trailing whitespace  
							
							... 
							
							
							
							llvm-svn: 21427 
							
						 
						
							2005-04-21 23:48:37 +00:00  
				
					
						
							
							
								 
						
							
								531f9e92d4 
								
							 
						 
						
							
							
								
								This mega patch converts us from using Function::a{iterator|begin|end} to  
							
							... 
							
							
							
							using Function::arg_{iterator|begin|end}.  Likewise Module::g* -> Module::global_*.
This patch is contributed by Gabor Greif, thanks!
llvm-svn: 20597 
							
						 
						
							2005-03-15 04:54:21 +00:00  
				
					
						
							
							
								 
						
							
								4f2cf030e8 
								
							 
						 
						
							
							
								
								'Pass' should now not be derived from by clients.  Instead, they should derive  
							
							... 
							
							
							
							from ModulePass.  Instead of implementing Pass::run, then should implement
ModulePass::runOnModule.
llvm-svn: 16436 
							
						 
						
							2004-09-20 04:48:05 +00:00  
				
					
						
							
							
								 
						
							
								7c16caa336 
								
							 
						 
						
							
							
								
								Changes For Bug 352  
							
							... 
							
							
							
							Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.
llvm-svn: 16137 
							
						 
						
							2004-09-01 22:55:40 +00:00  
				
					
						
							
							
								 
						
							
								f52e03c79e 
								
							 
						 
						
							
							
								
								Finegrainify namespacification  
							
							... 
							
							
							
							llvm-svn: 10138 
							
						 
						
							2003-11-21 21:54:22 +00:00  
				
					
						
							
							
								 
						
							
								960707c335 
								
							 
						 
						
							
							
								
								Put all LLVM code into the llvm namespace, as per bug 109.  
							
							... 
							
							
							
							llvm-svn: 9903 
							
						 
						
							2003-11-11 22:41:34 +00:00  
				
					
						
							
							
								 
						
							
								482202a601 
								
							 
						 
						
							
							
								
								Added LLVM project notice to the top of every C++ source file.  
							
							... 
							
							
							
							Header files will be on the way.
llvm-svn: 9298 
							
						 
						
							2003-10-20 19:43:21 +00:00  
				
					
						
							
							
								 
						
							
								8abcd56c74 
								
							 
						 
						
							
							
								
								DEBUG got moved to Support/Debug.h  
							
							... 
							
							
							
							llvm-svn: 7492 
							
						 
						
							2003-08-01 22:15:03 +00:00  
				
					
						
							
							
								 
						
							
								fd5d323ea9 
								
							 
						 
						
							
							
								
								When internalizing global ctor/dtor list, also mark it constant.  This is gross, but  
							
							... 
							
							
							
							until DSA is working all of the time and is totally reliable, we do this.
llvm-svn: 6917 
							
						 
						
							2003-06-26 05:30:40 +00:00  
				
					
						
							
							
								 
						
							
								224ae025ef 
								
							 
						 
						
							
							
								
								Make the list accept comma separated names  
							
							... 
							
							
							
							llvm-svn: 6295 
							
						 
						
							2003-05-22 20:27:13 +00:00  
				
					
						
							
							
								 
						
							
								ad44cd840b 
								
							 
						 
						
							
							
								
								* Revert to old behavior of ignoring a module if it doesn't contain a main  
							
							... 
							
							
							
							function and no symbols were explicitly marked to be externalized.
* Add new -internalize-public-api-list option that can be used if the symbol
  list is small, and making a new file is annoying.
llvm-svn: 6289 
							
						 
						
							2003-05-22 19:48:00 +00:00  
				
					
						
							
							
								 
						
							
								44457bb5ea 
								
							 
						 
						
							
							
								
								Add option to internalize to allow it to read a file to determine which symbols  
							
							... 
							
							
							
							should not be internalized
llvm-svn: 6288 
							
						 
						
							2003-05-22 19:34:49 +00:00  
				
					
						
							
							
								 
						
							
								379a8d2d1c 
								
							 
						 
						
							
							
								
								Add new linkage types to support a real frontend  
							
							... 
							
							
							
							llvm-svn: 5786 
							
						 
						
							2003-04-16 20:28:45 +00:00  
				
					
						
							
							
								 
						
							
								17069b342a 
								
							 
						 
						
							
							
								
								Use the new getMainFunction() method to efficiently locate main  
							
							... 
							
							
							
							llvm-svn: 4630 
							
						 
						
							2002-11-08 20:34:21 +00:00  
				
					
						
							
							
								 
						
							
								68f21bcb1b 
								
							 
						 
						
							
							
								
								Non-functionality change just to make it more clear what is going on  
							
							... 
							
							
							
							llvm-svn: 4060 
							
						 
						
							2002-10-07 18:34:32 +00:00  
				
					
						
							
							
								 
						
							
								bf3a099a62 
								
							 
						 
						
							
							
								
								Updates to work with recent Statistic's changes:  
							
							... 
							
							
							
							* Renamed StatisticReporter.h/cpp to Statistic.h/cpp
    * Broke constructor to take two const char * arguments instead of one, so
      that indendation can be taken care of automatically.
    * Sort the list by pass name when printing
    * Make sure to print all statistics as a group, instead of randomly when
      the statistics dtors are called.
    * Updated ProgrammersManual with new semantics.
llvm-svn: 4002 
							
						 
						
							2002-10-01 22:38:41 +00:00  
				
					
						
							
							
								 
						
							
								47cc3669ff 
								
							 
						 
						
							
							
								
								* Indent class into anonymous namespace, filling up the diff with garbage  
							
							... 
							
							
							
							* Internalize global variables with initializers
* Add new stat to track global variable internalization
* Only count functions that were not internal before in internalized function
  count
llvm-svn: 3163 
							
						 
						
							2002-07-30 19:48:44 +00:00  
				
					
						
							
							
								 
						
							
								a2c0985980 
								
							 
						 
						
							
							
								
								* 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
llvm-svn: 3112 
							
						 
						
							2002-07-26 21:12:44 +00:00  
				
					
						
							
							
								 
						
							
								99a53f6aa9 
								
							 
						 
						
							
							
								
								Eliminate several include/llvm/Transforms/IPO/*.h files, moving their contents into IPO.h  
							
							... 
							
							
							
							llvm-svn: 3043 
							
						 
						
							2002-07-24 17:12:05 +00:00  
				
					
						
							
							
								 
						
							
								b28b680155 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							... 
							
							
							
							llvm-svn: 3016 
							
						 
						
							2002-07-23 18:06:35 +00:00  
				
					
						
							
							
								 
						
							
								7076ff29ed 
								
							 
						 
						
							
							
								
								MEGAPATCH checkin.  
							
							... 
							
							
							
							For details, See: docs/2002-06-25-MegaPatchInfo.txt
llvm-svn: 2778 
							
						 
						
							2002-06-25 16:13:21 +00:00  
				
					
						
							
							
								 
						
							
								0b18c1d64e 
								
							 
						 
						
							
							
								
								Add support for printing out statistics information when -stats is added to  
							
							... 
							
							
							
							the command line
llvm-svn: 2601 
							
						 
						
							2002-05-10 15:38:35 +00:00  
				
					
						
							
							
								 
						
							
								37104aace8 
								
							 
						 
						
							
							
								
								Add new optional getPassName() virtual function that a Pass can override  
							
							... 
							
							
							
							to make debugging output a lot nicer.
llvm-svn: 2395 
							
						 
						
							2002-04-29 14:57:45 +00:00  
				
					
						
							
							
								 
						
							
								ee2e78b86c 
								
							 
						 
						
							
							
								
								Be careful not to make "external" function internal  
							
							... 
							
							
							
							llvm-svn: 2363 
							
						 
						
							2002-04-28 05:48:34 +00:00  
				
					
						
							
							
								 
						
							
								1b94c007dc 
								
							 
						 
						
							
							
								
								Initial checkin of new "Internalize" pass for GCCLD  
							
							... 
							
							
							
							llvm-svn: 2362 
							
						 
						
							2002-04-28 05:43:27 +00:00