Benjamin Kramer
							
						 
						
							 
							
							
							
							
								
							
							
								21d75078b5 
								
							 
						 
						
							
							
								
								Remove now unused Context variables.  
							
							 
							
							... 
							
							
							
							llvm-svn: 77495 
							
						 
						
							2009-07-29 19:14:17 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								487375e9a2 
								
							 
						 
						
							
							
								
								Move ConstantExpr to 2.5 API.  
							
							 
							
							... 
							
							
							
							llvm-svn: 77494 
							
						 
						
							2009-07-29 18:55:55 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								4aa3295a65 
								
							 
						 
						
							
							
								
								Return ConstantVector to 2.5 API.  
							
							 
							
							... 
							
							
							
							llvm-svn: 77366 
							
						 
						
							2009-07-28 21:19:26 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								c2c7932c64 
								
							 
						 
						
							
							
								
								Change ConstantArray to 2.5 API.  
							
							 
							
							... 
							
							
							
							llvm-svn: 77347 
							
						 
						
							2009-07-28 18:32:17 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								45308b578b 
								
							 
						 
						
							
							
								
								Move ConstantStruct back to 2.5 API.  
							
							 
							
							... 
							
							
							
							llvm-svn: 77266 
							
						 
						
							2009-07-27 22:29:26 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Dunbar
							
						 
						
							 
							
							
							
							
								
							
							
								e03eecb75f 
								
							 
						 
						
							
							
								
								Remove Value::{isName, getNameRef}.  
							
							 
							
							... 
							
							
							
							Also, change MDString to use a StringRef.
llvm-svn: 77098 
							
						 
						
							2009-07-25 23:55:21 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Dunbar
							
						 
						
							 
							
							
							
							
								
							
							
								d43b86d4a4 
								
							 
						 
						
							
							
								
								Finish migrating VMCore to StringRef/Twine based APIs.  
							
							 
							
							... 
							
							
							
							llvm-svn: 77051 
							
						 
						
							2009-07-25 06:02:13 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Dunbar
							
						 
						
							 
							
							
							
							
								
							
							
								4975db6276 
								
							 
						 
						
							
							
								
								Initial update to VMCore to use Twines for string arguments.  
							
							 
							
							... 
							
							
							
							- The only meat here is in Value.{h,cpp} the rest is essential 'const
   std::string &' -> 'const Twine &'.
llvm-svn: 77048 
							
						 
						
							2009-07-25 04:41:11 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Dunbar
							
						 
						
							 
							
							
							
							
								
							
							
								84b5f6efb7 
								
							 
						 
						
							
							
								
								Switch ValueSymbolTable to StringRef based API.  
							
							 
							
							... 
							
							
							
							llvm-svn: 76894 
							
						 
						
							2009-07-23 18:52:12 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								47db941fd3 
								
							 
						 
						
							
							
								
								Get rid of the Pass+Context magic.  
							
							 
							
							... 
							
							
							
							llvm-svn: 76702 
							
						 
						
							2009-07-22 00:24:57 +00:00  
						
					 
				
					
						
							
							
								 
								Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								a3c6f6bffa 
								
							 
						 
						
							
							
								
								Add plumbing for the `linker_private' linkage type. This type is meant for  
							
							 
							
							... 
							
							
							
							"private" symbols which the assember shouldn't strip, but which the linker may
remove after evaluation. This is mostly useful for Objective-C metadata.
This is plumbing, so we don't have a use of it yet. More to come, etc.
llvm-svn: 76385 
							
						 
						
							2009-07-20 01:03:30 +00:00  
						
					 
				
					
						
							
							
								 
								Torok Edwin
							
						 
						
							 
							
							
							
							
								
							
							
								fbcc663cbf 
								
							 
						 
						
							
							
								
								llvm_unreachable->llvm_unreachable(0), LLVM_UNREACHABLE->llvm_unreachable.  
							
							 
							
							... 
							
							
							
							This adds location info for all llvm_unreachable calls (which is a macro now) in
!NDEBUG builds.
In NDEBUG builds location info and the message is off (it only prints
"UREACHABLE executed").
llvm-svn: 75640 
							
						 
						
							2009-07-14 16:55:14 +00:00  
						
					 
				
					
						
							
							
								 
								Torok Edwin
							
						 
						
							 
							
							
							
							
								
							
							
								56d0659726 
								
							 
						 
						
							
							
								
								assert(0) -> LLVM_UNREACHABLE.  
							
							 
							
							... 
							
							
							
							Make llvm_unreachable take an optional string, thus moving the cerr<< out of
line.
LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for
NDEBUG builds.
llvm-svn: 75379 
							
						 
						
							2009-07-11 20:10:48 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								b17f32945f 
								
							 
						 
						
							
							
								
								Switch GlobalVariable ctors to a sane API, where *either* a context or a module is required.  
							
							 
							
							... 
							
							
							
							llvm-svn: 75025 
							
						 
						
							2009-07-08 19:03:57 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								5948fdf68b 
								
							 
						 
						
							
							
								
								Push LLVMContext through GlobalVariables and IRBuilder.  
							
							 
							
							... 
							
							
							
							llvm-svn: 74985 
							
						 
						
							2009-07-08 01:26:06 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								fac7b59579 
								
							 
						 
						
							
							
								
								LLVM Context-ification.  
							
							 
							
							... 
							
							
							
							llvm-svn: 74948 
							
						 
						
							2009-07-07 21:07:14 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								2a15443aa8 
								
							 
						 
						
							
							
								
								Make the use of const with respect to LLVMContext sane.  Hopefully this is the last time, for the  
							
							 
							
							... 
							
							
							
							moment, that I will need to make far-reaching changes.
llvm-svn: 74655 
							
						 
						
							2009-07-01 23:13:44 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								1cf085d558 
								
							 
						 
						
							
							
								
								Hold the LLVMContext by reference rather than by pointer.  
							
							 
							
							... 
							
							
							
							llvm-svn: 74640 
							
						 
						
							2009-07-01 21:22:36 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								6773d388aa 
								
							 
						 
						
							
							
								
								Add a pointer to the owning LLVMContext to Module.  This requires threading LLVMContext through a lot  
							
							 
							
							... 
							
							
							
							of the bitcode reader and ASM parser APIs, as well as supporting it in all of the tools.
Patches for Clang and LLVM-GCC to follow.
llvm-svn: 74614 
							
						 
						
							2009-07-01 16:58:40 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								184f1be4a8 
								
							 
						 
						
							
							
								
								Add a new "available_externally" linkage type.  This is intended  
							
							 
							
							... 
							
							
							
							to support C99 inline, GNU extern inline, etc.  Related bugzilla's
include PR3517, PR3100, & PR2933.  Nothing uses this yet, but it
appears to work.
llvm-svn: 68940 
							
						 
						
							2009-04-13 05:44:34 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								d725c99199 
								
							 
						 
						
							
							
								
								Apply ODR linkage changes accidentally dropped during  
							
							 
							
							... 
							
							
							
							final cleaning.  This fixes a bunch of testsuite failures.
llvm-svn: 66380 
							
						 
						
							2009-03-08 13:35:23 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								12da8ce3d2 
								
							 
						 
						
							
							
								
								Introduce new linkage types linkonce_odr, weak_odr, common_odr  
							
							 
							
							... 
							
							
							
							and extern_weak_odr.  These are the same as the non-odr versions,
except that they indicate that the global will only be overridden
by an *equivalent* global.  In C, a function with weak linkage can
be overridden by a function which behaves completely differently.
This means that IP passes have to skip weak functions, since any
deductions made from the function definition might be wrong, since
the definition could be replaced by something completely different
at link time.   This is not allowed in C++, thanks to the ODR
(One-Definition-Rule): if a function is replaced by another at
link-time, then the new function must be the same as the original
function.  If a language knows that a function or other global can
only be overridden by an equivalent global, it can give it the
weak_odr linkage type, and the optimizers will understand that it
is alright to make deductions based on the function body.  The
code generators on the other hand map weak and weak_odr linkage
to the same thing.
llvm-svn: 66339 
							
						 
						
							2009-03-07 15:45:40 +00:00  
						
					 
				
					
						
							
							
								 
								Mikhail Glushenkov
							
						 
						
							 
							
							
							
							
								
							
							
								59a5afa996 
								
							 
						 
						
							
							
								
								Oops.  
							
							 
							
							... 
							
							
							
							llvm-svn: 65942 
							
						 
						
							2009-03-03 10:04:23 +00:00  
						
					 
				
					
						
							
							
								 
								Mikhail Glushenkov
							
						 
						
							 
							
							
							
							
								
							
							
								766d48947a 
								
							 
						 
						
							
							
								
								80-column violation + trailing whitespace.  
							
							 
							
							... 
							
							
							
							llvm-svn: 65936 
							
						 
						
							2009-03-03 07:22:23 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								6de96a1b5d 
								
							 
						 
						
							
							
								
								Add the private linkage.  
							
							 
							
							... 
							
							
							
							llvm-svn: 62279 
							
						 
						
							2009-01-15 20:18:42 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								5cbf223916 
								
							 
						 
						
							
							
								
								Removed trailing whitespace from Makefiles.  
							
							 
							
							... 
							
							
							
							llvm-svn: 61991 
							
						 
						
							2009-01-09 16:44:42 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								f856f50463 
								
							 
						 
						
							
							
								
								Make comments and code for QuietWarnings and QuietErrors  
							
							 
							
							... 
							
							
							
							actually correspond to what their names suggest.
llvm-svn: 58146 
							
						 
						
							2008-10-25 17:57:20 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								006659f08d 
								
							 
						 
						
							
							
								
								Also properly handle linking of strong alias and weak global  
							
							 
							
							... 
							
							
							
							llvm-svn: 57595 
							
						 
						
							2008-10-15 20:10:50 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								82dd61114d 
								
							 
						 
						
							
							
								
								Properly handle linking of strong alias with weak function, this fixes PR2883  
							
							 
							
							... 
							
							
							
							llvm-svn: 57594 
							
						 
						
							2008-10-15 20:10:08 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								08d91178e9 
								
							 
						 
						
							
							
								
								Rename isWeakForLinker to mayBeOverridden.  Use it  
							
							 
							
							... 
							
							
							
							instead of hasWeakLinkage in a bunch of optimization
passes.
llvm-svn: 56782 
							
						 
						
							2008-09-29 11:25:42 +00:00  
						
					 
				
					
						
							
							
								 
								Oscar Fuentes
							
						 
						
							 
							
							
							
							
								
							
							
								a229b3c9a7 
								
							 
						 
						
							
							
								
								Initial support for the CMake build system.  
							
							 
							
							... 
							
							
							
							llvm-svn: 56419 
							
						 
						
							2008-09-22 01:08:49 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								1a1140429e 
								
							 
						 
						
							
							
								
								Make safer variant of alias resolution routine to be default  
							
							 
							
							... 
							
							
							
							llvm-svn: 56005 
							
						 
						
							2008-09-09 20:05:04 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								ac2c655808 
								
							 
						 
						
							
							
								
								Fix incorrect linker behaviour: we shouldn't resolve weak aliases.  
							
							 
							
							... 
							
							
							
							llvm-svn: 55997 
							
						 
						
							2008-09-09 18:23:48 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0ead7a50b2 
								
							 
						 
						
							
							
								
								Reimplement LinkFunctionProtos in terms of GetLinkageResult.  This fixes  
							
							 
							
							... 
							
							
							
							the second half of link-global-to-func.ll and causes some minor changes in
messages.
There are two TODOs here.  First, this causes a regression in 
2008-07-06-AliasWeakDest.ll, which is now failing (so I xfailed it).  Anton,
I would really appreciate it if you could take a look at this.  It should be
a matter of adding proper alias support to GetLinkageResult, and was probably
already a latent bug that would manifest with globals.
The second todo is to reimplement LinkAlias in the same pattern as 
function and global linking.  This should be pretty straight-forward for 
someone who knows aliases, but isn't a requirement for correctness.
llvm-svn: 53548 
							
						 
						
							2008-07-14 07:23:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c08e7a00c3 
								
							 
						 
						
							
							
								
								don't do any linkage, not even type resolution, of symbols that have  
							
							 
							
							... 
							
							
							
							internal linkage.
llvm-svn: 53547 
							
						 
						
							2008-07-14 06:52:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								34fc5a0eaa 
								
							 
						 
						
							
							
								
								implement linking of globals to functions, in one direction  
							
							 
							
							... 
							
							
							
							(replacing a function with a global).  This is needed when building
llvm itself with LTO on darwin, because of the EXPLICIT_SYMBOL hack
in lib/system/DynamicLibrary.cpp.
Implementation of linking the other way will need to wait for a 
cleanup of LinkFunctionProtos.
llvm-svn: 53546 
							
						 
						
							2008-07-14 06:49:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								177a3008e1 
								
							 
						 
						
							
							
								
								wrap long lines, remove some code from a non-assert build.  
							
							 
							
							... 
							
							
							
							llvm-svn: 53545 
							
						 
						
							2008-07-14 05:52:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								683ed3d94e 
								
							 
						 
						
							
							
								
								The source and dest of an alias are *not* required to have the same type,  
							
							 
							
							... 
							
							
							
							though that would be nice and make sense :).  Patch by Nathan Keynes!
llvm-svn: 53387 
							
						 
						
							2008-07-10 01:09:33 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								38740a98b2 
								
							 
						 
						
							
							
								
								Make DenseMap's insert return a pair, to more closely resemble std::map.  
							
							 
							
							... 
							
							
							
							llvm-svn: 53177 
							
						 
						
							2008-07-07 17:46:23 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								a970df57bc 
								
							 
						 
						
							
							
								
								Add convenient helper for checking whether global is weak in linker sense  
							
							 
							
							... 
							
							
							
							having weak or linkonce or common or extweak LLVM linkage.
llvm-svn: 53158 
							
						 
						
							2008-07-05 23:48:30 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								9cd0b50f16 
								
							 
						 
						
							
							
								
								Override weak stuff during linking of aliases. This fixes PR2463.  
							
							 
							
							... 
							
							
							
							llvm-svn: 53156 
							
						 
						
							2008-07-05 23:33:22 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								1bb56dedf5 
								
							 
						 
						
							
							
								
								Properly link alias and function decls. This fixes PR2146  
							
							 
							
							... 
							
							
							
							llvm-svn: 53154 
							
						 
						
							2008-07-05 23:03:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b32a9ef00f 
								
							 
						 
						
							
							
								
								when linking globals, make sure to preserve the address space of the global.  
							
							 
							
							... 
							
							
							
							llvm-svn: 52810 
							
						 
						
							2008-06-27 03:10:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d53bd2da98 
								
							 
						 
						
							
							
								
								Fix an error handling redefinition of linkonce functions where the  
							
							 
							
							... 
							
							
							
							types differ.  Patch by Nathan Keynes!
llvm-svn: 52527 
							
						 
						
							2008-06-20 05:29:39 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								56cdea6b3e 
								
							 
						 
						
							
							
								
								Add a missing ~ (dtor became ctor) which caused crashes on a bunch of stuff.  
							
							 
							
							... 
							
							
							
							llvm-svn: 52374 
							
						 
						
							2008-06-16 23:06:51 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9be15893c5 
								
							 
						 
						
							
							
								
								stop making PATypeHolder's so crazily.  
							
							 
							
							... 
							
							
							
							llvm-svn: 52364 
							
						 
						
							2008-06-16 21:17:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								eee6f995dd 
								
							 
						 
						
							
							
								
								use a real associative container for type association instead of using  
							
							 
							
							... 
							
							
							
							a vector with a linear search.  This speeds up the linking testcase 
in PR1860 from 0.965s to 0.385s on my system.
llvm-svn: 52357 
							
						 
						
							2008-06-16 21:00:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fe677e9570 
								
							 
						 
						
							
							
								
								bail out sooner if we have two concrete but different types.  
							
							 
							
							... 
							
							
							
							llvm-svn: 52351 
							
						 
						
							2008-06-16 20:03:01 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								85b66d18b9 
								
							 
						 
						
							
							
								
								simplify some code.  
							
							 
							
							... 
							
							
							
							llvm-svn: 52350 
							
						 
						
							2008-06-16 19:55:40 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8cb74995cc 
								
							 
						 
						
							
							
								
								Apply a patch from Nathan Keynes, which speeds up llvm-link on  
							
							 
							
							... 
							
							
							
							the testcases in PR1860 from taking more than 1 hour (when I killed it)
to taking 1s.
llvm-svn: 52347 
							
						 
						
							2008-06-16 19:48:08 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9995302b02 
								
							 
						 
						
							
							
								
								handle vectors.  Any integers that got here would necessarily be different already.  
							
							 
							
							... 
							
							
							
							llvm-svn: 52341 
							
						 
						
							2008-06-16 18:27:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8aa89e4181 
								
							 
						 
						
							
							
								
								Simplify ResolveTypes by pulling the null case out into the one  
							
							 
							
							... 
							
							
							
							client that cares and simplifying its control flow.
Remove the DestST argument to ResolveTypes and RecursiveResolveTypes*
which are dead now.
llvm-svn: 52340 
							
						 
						
							2008-06-16 18:19:05 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e9bb8552af 
								
							 
						 
						
							
							
								
								simplify RecursiveResolveTypes and ResolveTypes by pulling the naming out of  
							
							 
							
							... 
							
							
							
							ResolveTypes into the one place that needs it.
llvm-svn: 52338 
							
						 
						
							2008-06-16 18:11:40 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								77e8ac4d03 
								
							 
						 
						
							
							
								
								use 'continue' to make the function linker simpler.  When linking a strong  
							
							 
							
							... 
							
							
							
							function into a weak function, zap the weak function body so that the
strong one overrides it.  This fixes PR2410
llvm-svn: 52135 
							
						 
						
							2008-06-09 07:47:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								228a5f1867 
								
							 
						 
						
							
							
								
								minor changes to short circuit the 'no linkage' case earlier for  
							
							 
							
							... 
							
							
							
							function bodies.  We now don't try to unify types or handling type
mismatches if when linking an internal foo to an external foo.
llvm-svn: 52134 
							
						 
						
							2008-06-09 07:36:11 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ec7441b365 
								
							 
						 
						
							
							
								
								simplify function visibility handling.  
							
							 
							
							... 
							
							
							
							llvm-svn: 52133 
							
						 
						
							2008-06-09 07:25:28 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								dd7daee850 
								
							 
						 
						
							
							
								
								Factor code to copy global value attributes like  
							
							 
							
							... 
							
							
							
							the section or the visibility from one global
value to another: copyAttributesFrom.  This is
particularly useful for duplicating functions:
previously this was done by explicitly copying
each attribute in turn at each place where a
new function was created out of an old one, with
the result that obscure attributes were regularly
forgotten (like the collector or the section).
Hopefully now everything is uniform and nothing
is forgotten.
llvm-svn: 51567 
							
						 
						
							2008-05-26 19:58:59 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								697e94cc22 
								
							 
						 
						
							
							
								
								Fix a bunch of 80col violations that arose from the Create API change. Tweak makefile targets to find these better.  
							
							 
							
							... 
							
							
							
							llvm-svn: 51143 
							
						 
						
							2008-05-15 10:04:30 +00:00  
						
					 
				
					
						
							
							
								 
								Dale Johannesen
							
						 
						
							 
							
							
							
							
								
							
							
								ce4396bc92 
								
							 
						 
						
							
							
								
								Add CommonLinkage; currently tentative definitions  
							
							 
							
							... 
							
							
							
							are represented as "weak", but there are subtle differences
in some cases on Darwin, so we need both.  The intent
is that "common" will behave identically to "weak" unless
somebody changes their target to do something else.
No functional change as yet.
llvm-svn: 51118 
							
						 
						
							2008-05-14 20:12:51 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								acbdaa2406 
								
							 
						 
						
							
							
								
								Fix linking of internal aliases  
							
							 
							
							... 
							
							
							
							llvm-svn: 50950 
							
						 
						
							2008-05-10 14:41:43 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								fc2edad4ae 
								
							 
						 
						
							
							
								
								Turn StripPointerCast() into a method  
							
							 
							
							... 
							
							
							
							llvm-svn: 50836 
							
						 
						
							2008-05-07 22:54:15 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								09cfb1cf2d 
								
							 
						 
						
							
							
								
								If weak GlobalVariable was bitcast'ed to different type during linking  
							
							 
							
							... 
							
							
							
							we will need to strip all casts for intializer lookup.
llvm-svn: 50776 
							
						 
						
							2008-05-06 22:52:54 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								7629b71dd4 
								
							 
						 
						
							
							
								
								Revert r49614.  As Dan pointed out, some of these aren't correct.  
							
							 
							
							... 
							
							
							
							llvm-svn: 49657 
							
						 
						
							2008-04-14 17:38:21 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								1f6fbc4bc3 
								
							 
						 
						
							
							
								
								Replace calls of the form V1->setName(V2->getName()) with V1->takeName(V2),  
							
							 
							
							... 
							
							
							
							which is significantly more efficient.
llvm-svn: 49614 
							
						 
						
							2008-04-13 19:15:17 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								e9ecc68d8f 
								
							 
						 
						
							
							
								
								API changes for class Use size reduction, wave 1.  
							
							 
							
							... 
							
							
							
							Specifically, introduction of XXX::Create methods
for Users that have a potentially variable number of
Uses.
llvm-svn: 49277 
							
						 
						
							2008-04-06 20:25:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6f2ffdb73f 
								
							 
						 
						
							
							
								
								Change the MemoryBuffer::getFile* methods to take just a pointer to the  
							
							 
							
							... 
							
							
							
							start of a filename, not a filename+length.  All clients can produce a
null terminated name, and the system api's require null terminated 
strings anyway.
llvm-svn: 49041 
							
						 
						
							2008-04-01 18:04:03 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								e6d90f5a95 
								
							 
						 
						
							
							
								
								Ultimately resolve aliases during linking, if possible  
							
							 
							
							... 
							
							
							
							llvm-svn: 48259 
							
						 
						
							2008-03-11 22:51:09 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								2591afca0a 
								
							 
						 
						
							
							
								
								Fix thinko: alias always defines new symbol. Even is aliasee itself is undefined.  
							
							 
							
							... 
							
							
							
							llvm-svn: 48203 
							
						 
						
							2008-03-11 00:24:53 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								510fc32d15 
								
							 
						 
						
							
							
								
								Add sanity checks  
							
							 
							
							... 
							
							
							
							llvm-svn: 48184 
							
						 
						
							2008-03-10 22:36:53 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								d5160da577 
								
							 
						 
						
							
							
								
								Typo: 'function' => 'alias'  
							
							 
							
							... 
							
							
							
							llvm-svn: 48183 
							
						 
						
							2008-03-10 22:36:35 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								66a6271c07 
								
							 
						 
						
							
							
								
								Syntactic sugar'ify stuff :)  
							
							 
							
							... 
							
							
							
							llvm-svn: 48182 
							
						 
						
							2008-03-10 22:36:08 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								715ef43c2e 
								
							 
						 
						
							
							
								
								Always run 'make check' :) Fix fallout from prev. commit: query for possible  
							
							 
							
							... 
							
							
							
							alias destination only if we don't have anything to link to
llvm-svn: 48181 
							
						 
						
							2008-03-10 22:35:31 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								eeb5ca6f5f 
								
							 
						 
						
							
							
								
								Make error messages to have common style  
							
							 
							
							... 
							
							
							
							llvm-svn: 48180 
							
						 
						
							2008-03-10 22:34:46 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								e79f4c77f0 
								
							 
						 
						
							
							
								
								Properly link globals with aliases  
							
							 
							
							... 
							
							
							
							llvm-svn: 48179 
							
						 
						
							2008-03-10 22:34:28 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								f6439246cc 
								
							 
						 
						
							
							
								
								Remove the LinkGlobal weirderness in common linking phase.  
							
							 
							
							... 
							
							
							
							llvm-svn: 48177 
							
						 
						
							2008-03-10 22:33:53 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								1f93c50ace 
								
							 
						 
						
							
							
								
								Typo  
							
							 
							
							... 
							
							
							
							llvm-svn: 48176 
							
						 
						
							2008-03-10 22:33:22 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								d48ed17d18 
								
							 
						 
						
							
							
								
								Fix some compilation errors on msvc:  
							
							 
							
							... 
							
							
							
							- "Redefinition of I" (iterator masks previous definition)
- include missing header file
Patch by Argiris Kirtzidis!
llvm-svn: 48115 
							
						 
						
							2008-03-09 18:32:50 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								e8a3e74b6c 
								
							 
						 
						
							
							
								
								Clarify some important bits  
							
							 
							
							... 
							
							
							
							llvm-svn: 48010 
							
						 
						
							2008-03-07 18:34:50 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								0074ea3ae7 
								
							 
						 
						
							
							
								
								Small cleanup: propagate thread-localness via generic routine.  
							
							 
							
							... 
							
							
							
							No functionality change.
llvm-svn: 48009 
							
						 
						
							2008-03-07 18:32:18 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								2609888f29 
								
							 
						 
						
							
							
								
								Missed patch from my last commit  
							
							 
							
							... 
							
							
							
							llvm-svn: 47977 
							
						 
						
							2008-03-05 23:21:39 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								e43711d392 
								
							 
						 
						
							
							
								
								Resolve aliases to aliasees, where possible  
							
							 
							
							... 
							
							
							
							llvm-svn: 47975 
							
						 
						
							2008-03-05 23:08:47 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								24f65c3ab7 
								
							 
						 
						
							
							
								
								Handle functions as targets during linking of aliases as well  
							
							 
							
							... 
							
							
							
							llvm-svn: 47974 
							
						 
						
							2008-03-05 23:08:16 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								dac5fa94ef 
								
							 
						 
						
							
							
								
								Try hard to link aliases. Checks can be too strict by now.  
							
							 
							
							... 
							
							
							
							llvm-svn: 47968 
							
						 
						
							2008-03-05 22:22:46 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								2e13597f9d 
								
							 
						 
						
							
							
								
								Remember the source->dest mapping when copying aliases. This fixes PR2054  
							
							 
							
							... 
							
							
							
							llvm-svn: 47945 
							
						 
						
							2008-03-05 15:27:21 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								12cee7195f 
								
							 
						 
						
							
							
								
								Clarify the state-of-the-art  
							
							 
							
							... 
							
							
							
							llvm-svn: 47944 
							
						 
						
							2008-03-05 15:11:00 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								28179f764c 
								
							 
						 
						
							
							
								
								Properly populate lists of defined/undefined symbols in presence of aliases  
							
							 
							
							... 
							
							
							
							llvm-svn: 47900 
							
						 
						
							2008-03-04 20:16:11 +00:00  
						
					 
				
					
						
							
							
								 
								Lauro Ramos Venancio
							
						 
						
							 
							
							
							
							
								
							
							
								14241b29b2 
								
							 
						 
						
							
							
								
								Emit an error when a library is not found. It is the GNU ld behavior and it is expected by the configure scripts.  
							
							 
							
							... 
							
							
							
							llvm-svn: 47674 
							
						 
						
							2008-02-27 17:20:32 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								bddf51bc9b 
								
							 
						 
						
							
							
								
								And final pack of warnings silencing  
							
							 
							
							... 
							
							
							
							llvm-svn: 47372 
							
						 
						
							2008-02-20 11:27:04 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								90c2df5bd0 
								
							 
						 
						
							
							
								
								random cleanups.  
							
							 
							
							... 
							
							
							
							llvm-svn: 47334 
							
						 
						
							2008-02-19 18:49:08 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f3ebc3f3d2 
								
							 
						 
						
							
							
								
								Remove attribution from file headers, per discussion on llvmdev.  
							
							 
							
							... 
							
							
							
							llvm-svn: 45418 
							
						 
						
							2007-12-29 20:36:04 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a087a8d2ce 
								
							 
						 
						
							
							
								
								remove attribution from lib Makefiles.  
							
							 
							
							... 
							
							
							
							llvm-svn: 45415 
							
						 
						
							2007-12-29 20:09:26 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								4f00f531ad 
								
							 
						 
						
							
							
								
								Ignore functions with internal linkages during linking. This snipped mimics the  
							
							 
							
							... 
							
							
							
							behaviour of LinkGlobals() function.
llvm-svn: 45375 
							
						 
						
							2007-12-27 23:21:57 +00:00  
						
					 
				
					
						
							
							
								 
								Gordon Henriksen
							
						 
						
							 
							
							
							
							
								
							
							
								520e64c0c2 
								
							 
						 
						
							
							
								
								Fixing several transforms which would drop the collector attribute  
							
							 
							
							... 
							
							
							
							when copying functions.
llvm-svn: 45356 
							
						 
						
							2007-12-25 22:16:06 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								ad0ea2d430 
								
							 
						 
						
							
							
								
								Fix PR1146: parameter attributes are longer part of  
							
							 
							
							... 
							
							
							
							the function type, instead they belong to functions
and function calls.  This is an updated and slightly
corrected version of Reid Spencer's original patch.
The only known problem is that auto-upgrading of
bitcode files doesn't seem to work properly (see
test/Bitcode/AutoUpgradeIntrinsics.ll).  Hopefully
a bitcode guru (who might that be? :) ) will fix it.
llvm-svn: 44359 
							
						 
						
							2007-11-27 13:23:08 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								5e79a6108f 
								
							 
						 
						
							
							
								
								Use correct parentheses with the '&& "..."' idiom in an assert.  
							
							 
							
							... 
							
							
							
							llvm-svn: 42750 
							
						 
						
							2007-10-08 15:13:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1cc79985cd 
								
							 
						 
						
							
							
								
								Fix PR1611 - Visibility should be ignored for a declaration  
							
							 
							
							... 
							
							
							
							when a definition's visibility is different.  Likewise, the
visibility of two declarations mismatching is not an error.
llvm-svn: 41174 
							
						 
						
							2007-08-19 22:22:54 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								19c21c593f 
								
							 
						 
						
							
							
								
								Improve error handling in the linker by:  
							
							 
							
							... 
							
							
							
							1. Eliminate redundant error messages. LinkInFile and LinkInArchive
   already call the error() method in each case so there's no use
   telling the user again that an item couldn't be linked in.
2. Improve the formatting of error messages (separating content).
3. Change the wording for the warning about unrecognized files. Make
   it clear that the file is being ignored.
llvm-svn: 41121 
							
						 
						
							2007-08-16 07:47:30 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								e97fee7188 
								
							 
						 
						
							
							
								
								Ensure that error messages a propagated from calls to LinkInModule so they get  
							
							 
							
							... 
							
							
							
							reported to the end user.
llvm-svn: 41117 
							
						 
						
							2007-08-16 07:23:37 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								8609c06956 
								
							 
						 
						
							
							
								
								Allow the filename "-" to be a place holder for stdin. This allows directing  
							
							 
							
							... 
							
							
							
							stdin through llvm-ld and llvm-link.
llvm-svn: 40938 
							
						 
						
							2007-08-08 19:52:29 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								71ce927d7b 
								
							 
						 
						
							
							
								
								Report an error if one occurs in releaseModule.  
							
							 
							
							... 
							
							
							
							llvm-svn: 40405 
							
						 
						
							2007-07-22 21:39:37 +00:00