summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Linker/LinkModules.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove attribution from file headers, per discussion on llvmdev.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45418
* Ignore functions with internal linkages during linking. This snipped mimics theAnton Korobeynikov2007-12-271-0/+3
| | | | | | behaviour of LinkGlobals() function. llvm-svn: 45375
* Fixing several transforms which would drop the collector attributeGordon Henriksen2007-12-251-0/+2
| | | | | | when copying functions. llvm-svn: 45356
* Fix PR1146: parameter attributes are longer part ofDuncan Sands2007-11-271-0/+1
| | | | | | | | | | | | 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
* Use correct parentheses with the '&& "..."' idiom in an assert.Dan Gohman2007-10-081-2/+2
| | | | llvm-svn: 42750
* Fix PR1611 - Visibility should be ignored for a declarationChris Lattner2007-08-191-6/+13
| | | | | | | when a definition's visibility is different. Likewise, the visibility of two declarations mismatching is not an error. llvm-svn: 41174
* Fix a bug in my previous patch.Lauro Ramos Venancio2007-06-281-3/+2
| | | | llvm-svn: 37778
* When linking two modules, we should copy the alias.Lauro Ramos Venancio2007-06-281-0/+28
| | | | llvm-svn: 37776
* Propagate alignment, section name and visibility when linking "appendingLauro Ramos Venancio2007-06-061-0/+15
| | | | | | | global values". Fix noinline linkage. llvm-svn: 37482
* Implement visibility checking during linking. Also implement protectedAnton Korobeynikov2007-04-291-1/+14
| | | | | | visibility support for bitcode. llvm-svn: 36577
* Implement the "thread_local" keyword.Lauro Ramos Venancio2007-04-121-3/+4
| | | | llvm-svn: 35950
* For PR1195:Reid Spencer2007-02-151-2/+2
| | | | | | | Rename PackedType -> VectorType, ConstantPacked -> ConstantVector, and PackedTyID -> VectorTyID. No functional changes. llvm-svn: 34293
* simplify this code by using value::takenameChris Lattner2007-02-111-8/+5
| | | | llvm-svn: 34172
* For PR411:Reid Spencer2007-02-051-87/+99
| | | | | | | | | | 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. llvm-svn: 33918
* Fix some comments and other minor sundry things.Reid Spencer2007-02-041-12/+13
| | | | llvm-svn: 33873
* Ensure that visibility and section are properly propagated.Reid Spencer2007-02-041-9/+8
| | | | llvm-svn: 33872
* Back out last revision which was committed by accident.Reid Spencer2007-02-041-101/+85
| | | | llvm-svn: 33871
* Make sure that section and visibility are properly propagated.Reid Spencer2007-02-041-85/+101
| | | | llvm-svn: 33870
* preserve sections of globalsAndrew Lenharth2007-02-011-1/+10
| | | | llvm-svn: 33756
* For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoidReid Spencer2007-01-301-10/+10
| | | | | | confusion with external linkage types. llvm-svn: 33663
* Read from the right place.Chris Lattner2007-01-291-1/+1
| | | | llvm-svn: 33611
* Fix PR1139Chris Lattner2007-01-291-17/+24
| | | | llvm-svn: 33610
* For PR761:Reid Spencer2007-01-261-8/+14
| | | | | | | The Module::setEndianness and Module::setPointerSize methods have been removed. Instead you can get/set the DataLayout. Adjust thise accordingly. llvm-svn: 33530
* For PR1064:Reid Spencer2007-01-121-1/+7
| | | | | | | | | | | | | | | | | | | | | | | Implement the arbitrary bit-width integer feature. The feature allows integers of any bitwidth (up to 64) to be defined instead of just 1, 8, 16, 32, and 64 bit integers. This change does several things: 1. Introduces a new Derived Type, IntegerType, to represent the number of bits in an integer. The Type classes SubclassData field is used to store the number of bits. This allows 2^23 bits in an integer type. 2. Removes the five integer Type::TypeID values for the 1, 8, 16, 32 and 64-bit integers. These are replaced with just IntegerType which is not a primitive any more. 3. Adjust the rest of LLVM to account for this change. Note that while this incremental change lays the foundation for arbitrary bit-width integers, LLVM has not yet been converted to actually deal with them in any significant way. Most optimization passes, for example, will still only deal with the byte-width integer types. Future increments will rectify this situation. llvm-svn: 33113
* For PR411:Reid Spencer2007-01-061-18/+22
| | | | | | | | | Take an incremental step towards type plane elimination. This change separates types from values in the symbol tables by finally making use of the TypeSymbolTable class. This yields more natural interfaces for dealing with types and unclutters the SymbolTable class. llvm-svn: 32956
* extern_weak linkage. fixes PR1038Andrew Lenharth2006-12-151-1/+5
| | | | llvm-svn: 32603
* Change inferred getCast into specific getCast. Passes all tests.Reid Spencer2006-12-121-6/+6
| | | | llvm-svn: 32469
* Don't use <sstream> in Streams.h but <iosfwd> instead.Bill Wendling2006-12-071-0/+1
| | | | llvm-svn: 32340
* Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, areBill Wendling2006-12-071-9/+8
| | | | | | now cerr, cout, and NullStream resp. llvm-svn: 32298
* Introducing external weak linkage. Darwin codegen should be added later.Anton Korobeynikov2006-12-011-12/+24
| | | | llvm-svn: 32052
* Removed #include <iostream> and replaced with llvm_* streams.Bill Wendling2006-11-271-9/+9
| | | | llvm-svn: 31936
* silence warningsChris Lattner2006-11-091-2/+2
| | | | llvm-svn: 31587
* Adding dllimport, dllexport and external weak linkage types.Anton Korobeynikov2006-09-141-11/+31
| | | | | | | | | 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. llvm-svn: 30374
* eliminate some ugly code, using ConstantExpr::getWithOperands instead.Chris Lattner2006-07-141-51/+4
| | | | llvm-svn: 29149
* Fix Regression/Linker/2006-06-15-GlobalVarAnment.llChris Lattner2006-06-161-5/+18
| | | | llvm-svn: 28812
* Fix linking of inline asm objects.Chris Lattner2006-06-011-5/+9
| | | | llvm-svn: 28640
* Add shufflevector supportChris Lattner2006-04-081-0/+6
| | | | llvm-svn: 27515
* Add code to RemapOperand() to handle Instruction::ExtractElement andEvan Cheng2006-04-071-0/+12
| | | | | | Instruction::InsertElement. llvm-svn: 27477
* Rename methodChris Lattner2006-01-241-4/+5
| | | | llvm-svn: 25571
* Add support for linking inline asmChris Lattner2006-01-231-0/+7
| | | | llvm-svn: 25560
* add support for ConstantPacked to the linkerChris Lattner2006-01-191-0/+5
| | | | llvm-svn: 25467
* Fix test/Regression/Linker/2005-12-06-AppendingZeroLengthArrays.ll andChris Lattner2005-12-061-0/+2
| | | | | | | PR662. Thanks to Markus for providing me with a ton of files to reproduce the problem! llvm-svn: 24619
* For PR495:Reid Spencer2005-07-071-1/+1
| | | | | | | | | | | | | | | | | | | | | Get rid of the difference between file paths and directory paths. The Path class now simply stores a path that can refer to either a file or a directory. This required various changes in the implementation and interface of the class with the corresponding impact to its users. Doxygen comments were also updated to reflect these changes. Interface changes are: appendDirectory -> appendComponent appendFile -> appendComponent elideDirectory -> eraseComponent elideFile -> eraseComponent elideSuffix -> eraseSuffix renameFile -> rename setDirectory -> set setFile -> set Changes pass Dejagnu and llvm-test/SingleSource tests. llvm-svn: 22349
* Preserve CC's when linking modulesChris Lattner2005-05-091-0/+1
| | | | llvm-svn: 21799
* Remove trailing whitespaceMisha Brukman2005-04-211-18/+18
| | | | llvm-svn: 21422
* This mega patch converts us from using Function::a{iterator|begin|end} toChris Lattner2005-03-151-6/+6
| | | | | | | | using Function::arg_{iterator|begin|end}. Likewise Module::g* -> Module::global_*. This patch is contributed by Gabor Greif, thanks! llvm-svn: 20597
* Eliminate silly warnings from the linker of the form:Chris Lattner2005-02-191-12/+0
| | | | | | | WARNING: Type conflict between types named 'union.._604.'. Src=' %union.._604.'. Dest=' %union.._604.' llvm-svn: 20252
* Allow globals to be of different const'nesses when we link.Chris Lattner2005-02-121-8/+2
| | | | | | | This finally resolves PR502, PR450, and test/Regression/Linker/2005-02-12-ConstantGlobals{,-2}.ll correctly llvm-svn: 20135
* Make LinkModules a static member functionReid Spencer2004-12-131-1/+2
| | | | llvm-svn: 18859
* Make sure to link the target-triple as well, so it ends up in the .llvm.bc fileChris Lattner2004-12-101-1/+6
| | | | llvm-svn: 18774
OpenPOWER on IntegriCloud