Evan Cheng 
							
						 
					 
					
						
						
							
						
						250c1d8734 
					 
					
						
						
							
							- Replace use of std::map<std::string, ..> with StringMap. Replace use of std::map with DenseMap, std::set with SmallPtrSet. This results in minor speed up.  
						
						... 
						
						
						
						- Some code clean up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53379  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-07-10 00:04:23 +00:00 
						 
				 
			
				
					
						
							
							
								Gabor Greif 
							
						 
					 
					
						
						
							
						
						b1dbcd886a 
					 
					
						
						
							
							Fix a bunch of 80col violations that arose from the Create API change. Tweak makefile targets to find these better.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51143  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-05-15 10:04:30 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						84b7df43fb 
					 
					
						
						
							
							Remove uses of llvm/System/IncludeFile.h that are no longer needed.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50695  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-05-06 01:32:53 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						705da96697 
					 
					
						
						
							
							targets that support quotes for mangled names still need to escape newlines  
						
						... 
						
						
						
						when they occur in the name, just like " is escaped.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47169  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-02-15 18:54:56 +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 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						a3355ffb3d 
					 
					
						
						
							
							Rather than having special rules like "intrinsics cannot  
						
						... 
						
						
						
						throw exceptions", just mark intrinsics with the nounwind
attribute.  Likewise, mark intrinsics as readnone/readonly
and get rid of special aliasing logic (which didn't use
anything more than this anyway).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44544  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-03 20:06:50 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						ecd9137758 
					 
					
						
						
							
							Add support for appending a suffix to the end of a mangled name.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42071  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-17 22:39:32 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						718cb665ca 
					 
					
						
						
							
							Add lengthof and endof templates that hide a lot of sizeof computations.  
						
						... 
						
						
						
						Patch by Sterling Stein!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41758  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-09-07 04:06:50 +00:00 
						 
				 
			
				
					
						
							
							
								Reid Spencer 
							
						 
					 
					
						
						
							
						
						5cbf985dcb 
					 
					
						
						
							
							For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoid  
						
						... 
						
						
						
						confusion with external linkage types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33663  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-01-30 20:08:39 +00:00 
						 
				 
			
				
					
						
							
							
								Anton Korobeynikov 
							
						 
					 
					
						
						
							
						
						b74ed07bfd 
					 
					
						
						
							
							Adding dllimport, dllexport and external weak linkage types.  
						
						... 
						
						
						
						DLL* linkages got full (I hope) codegeneration support in C & both x86
assembler backends.
External weak linkage added for future use, we don't provide any
codegeneration, etc. support for it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30374  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-09-14 18:23:27 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						833eb68a1f 
					 
					
						
						
							
							Add new option to leave asm names alone  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30149  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-09-07 18:20:41 +00:00 
						 
				 
			
				
					
						
							
							
								Reid Spencer 
							
						 
					 
					
						
						
							
						
						af303d53e6 
					 
					
						
						
							
							For PR780:  
						
						... 
						
						
						
						1. Add #includes to LinkAllVMCore.h to get Mangler.o and InlineAsm.o
2. Make Mangler.h and InlineAsm.h use the macros to ensure linkage
3. Make each of the tools with --load options include LinkAllVMCore.h
This should be the last set of changes for this bug and 800.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28719  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-06-07 23:03:13 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ed1e1e232f 
					 
					
						
						
							
							Another work around for the 'symbols with different types can have the same  
						
						... 
						
						
						
						name' issue.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26149  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-13 21:43:26 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d358cfc1bf 
					 
					
						
						
							
							Fix handling of multiple unnamed globals with the same type  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24362  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-11-15 01:32:03 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						92c4bb904f 
					 
					
						
						
							
							Fix the optimized code handling of user asm strings  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24296  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-11-10 23:24:26 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bc076665cb 
					 
					
						
						
							
							speedup the common case where nothing needs to be quoted  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24294  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-11-10 21:47:01 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						91150e5d46 
					 
					
						
						
							
							Allow per-character control over what target assemblers allow in symbol  
						
						... 
						
						
						
						names.  This also changes the default to allow all of "$_." in addition
to letters and numbers as symbol names.  If you don't want this, use
markCharUnacceptable to remove one of these or markCharAcceptable to add
to the set.  This corresponds with what GAS accepts by default.
Also, this includes some minor speedups
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24293  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-11-10 21:40:01 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ac8c834288 
					 
					
						
						
							
							Add a new option for targets that accept quoted labels.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24283  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-11-10 19:30:07 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2f9bc4f2d3 
					 
					
						
						
							
							remove the M instance var  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24281  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-11-10 19:02:18 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9ddf21276e 
					 
					
						
						
							
							Make this more efficient of the common case where we are only mangling globals.  
						
						... 
						
						
						
						Do not mangle internal global names that do not collide with anything.
This gives us strings that now look like this:
__2E_str_1:                             ; '.str_1'
        .asciz  "foo"
instead of this:
l1__2E_str_1:                           ; '.str_1'
        .asciz  "foo"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24277  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-11-10 18:48:58 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b4871ad694 
					 
					
						
						
							
							Allow $  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23721  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-10-14 01:28:34 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5b845c9443 
					 
					
						
						
							
							Add support for a marker byte that indicates that we shouldn't add the user  
						
						... 
						
						
						
						prefix to a symbol name
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23421  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-09-24 08:24:28 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						fd93908ae8 
					 
					
						
						
							
							Remove trailing whitespace  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21427  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-04-21 23:48:37 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e4d5c441e0 
					 
					
						
						
							
							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!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20597  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-03-15 04:54:21 +00:00 
						 
				 
			
				
					
						
							
							
								Reid Spencer 
							
						 
					 
					
						
						
							
						
						551ccae044 
					 
					
						
						
							
							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/.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-09-01 22:55:40 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						97f3e37f00 
					 
					
						
						
							
							Allow an arbitrary prefix  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15865  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-08-17 06:06:54 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d6391d7d3b 
					 
					
						
						
							
							Do not call Type::getUniqueID  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14706  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-07-08 22:09:34 +00:00 
						 
				 
			
				
					
						
							
							
								Brian Gaeke 
							
						 
					 
					
						
						
							
						
						a4c7c414ef 
					 
					
						
						
							
							Work around apparent Apple compiler bug which was making all mangled  
						
						... 
						
						
						
						names start with l0_.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14651  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-07-06 20:29:05 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6e40e1d15c 
					 
					
						
						
							
							Do not mangle intrinsics in any way!  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12673  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-04-05 20:17:53 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a6acb4f5fd 
					 
					
						
						
							
							Fix the logic in the name mangler.  If there are two symbols named 'X', and one  
						
						... 
						
						
						
						is external, make sure to mangle the *internal* one, not external one
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11424  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-14 00:30:23 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						82a5ff4c54 
					 
					
						
						
							
							Initialize the count instance variable.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11305  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-11 03:29:16 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2cdd21c2e4 
					 
					
						
						
							
							Finegrainify namespacification  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10464  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-12-14 21:35:53 +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 
						 
				 
			
				
					
						
							
							
								John Criswell 
							
						 
					 
					
						
						
							
						
						b576c94c15 
					 
					
						
						
							
							Added LLVM project notice to the top of every C++ source file.  
						
						... 
						
						
						
						Header files will be on the way.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9298  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-10-20 19:43:21 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						aa8a847c62 
					 
					
						
						
							
							Mangle ALL letters that we do not allow, not just a few.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8140  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-08-24 21:08:38 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2b3860faeb 
					 
					
						
						
							
							Add support to the mangler for targets which require _'s on global symbols  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7741  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-08-11 19:34:29 +00:00 
						 
				 
			
				
					
						
							
							
								Brian Gaeke 
							
						 
					 
					
						
						
							
						
						6b902dcd5d 
					 
					
						
						
							
							Include llvm/Support/Mangler.h first. Don't include <iostream>, <set>,  
						
						... 
						
						
						
						<string>, or llvm/Value.h.  Move up the inclusion of llvm/Support/Mangler.h.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7321  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-25 20:21:20 +00:00 
						 
				 
			
				
					
						
							
							
								Brian Gaeke 
							
						 
					 
					
						
						
							
						
						4166445b7c 
					 
					
						
						
							
							Cleanups:  
						
						... 
						
						
						
						Mangler.cpp: Constify parameter to makeNameProper, and use const_iterator.
 Make Count an unsigned int, and use utostr().
 Don't name parameters things that start with underscore.
Mangler.h: All of the above, and also: Add Emacs mode-line.  Include <set>.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7301  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-24 21:37:57 +00:00 
						 
				 
			
				
					
						
							
							
								Brian Gaeke 
							
						 
					 
					
						
						
							
						
						b198ca304b 
					 
					
						
						
							
							Factor out name-mangling from X86/Printer, which is derived from CWriter,  
						
						... 
						
						
						
						into this new support class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7300  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-07-24 20:20:58 +00:00