Reid Spencer 
							
						 
					 
					
						
						
							
						
						ef9b9a7939 
					 
					
						
						
							
							For PR411:  
						
						... 
						
						
						
						This patch replaces the SymbolTable class with ValueSymbolTable which does
not support types planes. This means that all symbol names in LLVM must now
be unique. The patch addresses the necessary changes to deal with this and
removes code no longer needed as a result. This completes the bulk of the
changes for this PR. Some cleanup patches will follow.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33918  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-02-05 20:47:22 +00:00 
						 
				 
			
				
					
						
							
							
								Anton Korobeynikov 
							
						 
					 
					
						
						
							
						
						b10308e440 
					 
					
						
						
							
							Propagate changes from my local tree. This patch includes:  
						
						... 
						
						
						
						1. New parameter attribute called 'inreg'. It has meaning "place this
parameter in registers, if possible". This is some generalization of
gcc's regparm(n) attribute. It's currently used only in X86-32 backend.
2. Completely rewritten CC handling/lowering code inside X86 backend.
Merged stdcall + c CCs and fastcall + fast CC.
3. Dropped CSRET CC. We cannot add struct return variant for each
target-specific CC (e.g. stdcall + csretcc and so on).
4. Instead of CSRET CC introduced 'sret' parameter attribute. Setting in
on first attribute has meaning 'This is hidden pointer to structure
return. Handle it gently'.
5. Fixed small bug in llvm-extract + add new feature to
FunctionExtraction pass, which relinks all internal-linkaged callees
from deleted function to external linkage. This will allow further
linking everything together.
NOTEs: 1. Documentation will be updated soon.
       2. llvm-upgrade should be improved to translate csret => sret.
          Before this, there will be some unexpected test fails.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33597  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-01-28 13:31:35 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						c71ca3cdd2 
					 
					
						
						
							
							Inherit CallGraphSCCPass directly from Pass.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33514  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-01-26 00:47:38 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						753d94a1c8 
					 
					
						
						
							
							Add new constructor to accept vector of exported names while creating  
						
						... 
						
						
						
						InternalizePass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29222  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-07-20 17:48:05 +00:00 
						 
				 
			
				
					
						
							
							
								Andrew Lenharth 
							
						 
					 
					
						
						
							
						
						3433141a3e 
					 
					
						
						
							
							Add a simple pass to make sure that all (non-library) calls to malloc and free  
						
						... 
						
						
						
						are visible to analysis as intrinsics.  That is, make sure someone doesn't pass
free around by address in some struct (as happens in say 176.gcc).
This doesn't get rid of any indirect calls, just ensure calls to free and malloc
are always direct.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27560  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-04-10 19:26:09 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f9c6105a78 
					 
					
						
						
							
							add an option to the internalize pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23782  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-10-18 06:28:16 +00:00 
						 
				 
			
				
					
						
							
							
								Reid Spencer 
							
						 
					 
					
						
						
							
						
						bb3d5d246b 
					 
					
						
						
							
							Declare a function to create the SimplifyLibCalls pass.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21523  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-04-25 02:54:00 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						34695381d6 
					 
					
						
						
							
							Remove trailing whitespace  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21412  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-04-21 20:59:05 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						ecc1cef8bf 
					 
					
						
						
							
							Apply feedback from Chris.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19432  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-10 04:23:32 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						bf65268def 
					 
					
						
						
							
							Add more missing createXxxPass functions.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19370  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-08 17:21:40 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3c05176526 
					 
					
						
						
							
							New prototype  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18751  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-12-10 07:55:01 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						92f6c15d8f 
					 
					
						
						
							
							Move the strip pass from Scalar to IPO lib  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18438  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-12-02 21:24:19 +00:00 
						 
				 
			
				
					
						
							
							
								Reid Spencer 
							
						 
					 
					
						
						
							
						
						0998afdc1e 
					 
					
						
						
							
							Declare a function in the correct namespace.  
						
						... 
						
						
						
						Patch contributed by Morten Ofstad. Thanks Morten!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17124  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-10-18 14:43:45 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						93a00e4ceb 
					 
					
						
						
							
							Rename pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16801  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-10-07 04:12:02 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8e47e7292c 
					 
					
						
						
							
							Do not prototype any of these passes as returning Pass*.  Instead, be specific  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16431  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-09-20 04:41:39 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						45df557348 
					 
					
						
						
							
							Add a pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15713  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-08-13 03:03:44 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c755307412 
					 
					
						
						
							
							Remove two dead passes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14456  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-06-28 00:43:25 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						7d248397a7 
					 
					
						
						
							
							Clarify the logic: the flag is renamed to `deleteFn' to signify it will delete  
						
						... 
						
						
						
						the function instead of isolating it. This also means the condition is reversed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13112  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-04-22 23:00:51 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						127a3e092b 
					 
					
						
						
							
							Add a boolean flag to delete this function from module, leaving the rest behind.  
						
						... 
						
						
						
						Useful in manual debugging when bugpoint isn't quite up to snuff.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13110  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-04-22 22:51:37 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7bc91c62f0 
					 
					
						
						
							
							Rename createLoopExtractorPass to createSingleLoopExtractorPass  
						
						... 
						
						
						
						Doxygenify
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12389  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-14 20:00:37 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4eddf37ee3 
					 
					
						
						
							
							Move loop extractor to the IPO header  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12374  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-14 02:36:34 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f0b6070272 
					 
					
						
						
							
							Add prototype  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12194  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-07 21:30:08 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						fdf6a3c8cc 
					 
					
						
						
							
							Add prototype  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11837  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-25 21:34:51 +00:00 
						 
				 
			
				
					
						
							
							
								Brian Gaeke 
							
						 
					 
					
						
						
							
						
						0f7d2e8b8d 
					 
					
						
						
							
							Fix typo in comment.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10487  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-16 21:55:45 +00:00 
						 
				 
			
				
					
						
							
							
								Brian Gaeke 
							
						 
					 
					
						
						
							
						
						d0fde30ce8 
					 
					
						
						
							
							Put all LLVM code into the llvm namespace, as per bug 109.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-11-11 22:41:34 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3323f2abbd 
					 
					
						
						
							
							Split the DAE pass into DAE and DAH passes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9742  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-11-05 21:43:42 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						815904d373 
					 
					
						
						
							
							Include new prototype  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9422  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-10-23 16:51:49 +00:00 
						 
				 
			
				
					
						
							
							
								John Criswell 
							
						 
					 
					
						
						
							
						
						6fbcc26f14 
					 
					
						
						
							
							Added LLVM copyright header (for lack of a better term).  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9304  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-10-20 20:19:47 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						370910d2a0 
					 
					
						
						
							
							Add prototype for the lowersetjmp pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8522  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-09-15 05:05:23 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2757af2d47 
					 
					
						
						
							
							Change the RaiseAllocations pass from being a BasicBlockPass to being a Pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8279  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-09-01 03:14:00 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						fa7f524162 
					 
					
						
						
							
							Add accessor function for the PruneEH pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8254  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-08-31 16:30:25 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9b2a14b6f1 
					 
					
						
						
							
							Add argument to DAE to allow operation on non-internal functions  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6895  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-06-25 04:12:49 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1989d34b3b 
					 
					
						
						
							
							Add prototype for the new DAE pass  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6703  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-06-16 12:16:52 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9a64084a84 
					 
					
						
						
							
							Remove pool alloc accessor  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5473  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-02-03 19:08:33 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8f51da42e7 
					 
					
						
						
							
							Move inlining pass to IPO.h  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4761  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-19 20:43:24 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5113eb0c52 
					 
					
						
						
							
							Move the function extractor pass from tools/extract into lib/Xform/IPO  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4759  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-11-19 18:42:59 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7afd98d144 
					 
					
						
						
							
							Converted SimpleStructMutation to take TargetData as a required pass.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3931  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-09-26 00:17:18 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ab955c3359 
					 
					
						
						
							
							Move many files into IPO.h  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3042  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-24 17:10:58 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5c5db0eeb4 
					 
					
						
						
							
							* Rename to IPO.h  
						
						... 
						
						
						
						* Add ConstantMerge.h contents
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3032  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-23 19:56:27 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						03917ccb0c 
					 
					
						
						
							
							Prepare the file to become IPO.h  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3029  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-07-23 19:48:52 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b59d8199e0 
					 
					
						
						
							
							Split the CleanupGCCOutput pass into two passes, and add real life actual  
						
						... 
						
						
						
						documentation on when they do.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2222  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-04-10 20:31:22 +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 
							
						 
					 
					
						
						
							
						
						967a04442d 
					 
					
						
						
							
							Convert xforms over to use new pass structure  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1596  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-01-30 23:29:35 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5048c3b853 
					 
					
						
						
							
							Pull RaiseAllocations stuff out of the CleanGCC pass into it's own pass in  
						
						... 
						
						
						
						the ChangeAllocations.h header file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1522  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-01-22 00:13:51 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f4de63f65f 
					 
					
						
						
							
							Implement a more powerful, simpler, pass system.  This pass system can figure  
						
						... 
						
						
						
						out how to run a collection of passes optimially given their behaviors and
charactaristics.
Convert code to use it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1507  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-01-21 07:31:50 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						430aa9ec1c 
					 
					
						
						
							
							-cleangcc pass now remove type names that are never referenced and type names for pointers to primitive types.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1312  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-11-15 04:34:46 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						407c25bd82 
					 
					
						
						
							
							Expose method to merge identically named methods  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1109  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-11-03 19:49:54 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bfe11108ad 
					 
					
						
						
							
							Implement code to convert %malloc and %free FUNCTION CALLS into the instruction equivalent  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1065  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-10-31 06:35:59 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2fa11445cd 
					 
					
						
						
							
							New GCC cleanup pass interface  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1061  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2001-10-31 04:32:53 +00:00