aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Linker
Commit message (Collapse)AuthorAgeFilesLines
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32956 91177308-0d34-0410-b5e6-96231b3b80d8
* extern_weak linkage. fixes PR1038Andrew Lenharth2006-12-151-1/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32603 91177308-0d34-0410-b5e6-96231b3b80d8
* Change inferred getCast into specific getCast. Passes all tests.Reid Spencer2006-12-121-6/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32469 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't use <sstream> in Streams.h but <iosfwd> instead.Bill Wendling2006-12-071-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32340 91177308-0d34-0410-b5e6-96231b3b80d8
* Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, areBill Wendling2006-12-072-12/+11
| | | | | | | now cerr, cout, and NullStream resp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32298 91177308-0d34-0410-b5e6-96231b3b80d8
* Introducing external weak linkage. Darwin codegen should be added later.Anton Korobeynikov2006-12-011-12/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32052 91177308-0d34-0410-b5e6-96231b3b80d8
* Removed #include <iostream> and replaced with llvm_* streams.Bill Wendling2006-11-272-20/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31936 91177308-0d34-0410-b5e6-96231b3b80d8
* Remvoe a do-nothing else block.Reid Spencer2006-11-111-6/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31687 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR998:Reid Spencer2006-11-112-17/+31
| | | | | | | | | Fix an infinite loop in the Linker and a few other assorted link problems. Patch contributed by Scott Michel. Thanks, Scott! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31680 91177308-0d34-0410-b5e6-96231b3b80d8
* silence warningsChris Lattner2006-11-091-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31587 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR786:Reid Spencer2006-11-021-14/+0
| | | | | | | | | | | Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting fall out by removing unused variables. Remaining warnings have to do with unused functions (I didn't want to delete code without review) and unused variables in generated code. Maintainers should clean up the remaining issues when they see them. All changes pass DejaGnu tests and Olden. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31380 91177308-0d34-0410-b5e6-96231b3b80d8
* Adding dllimport, dllexport and external weak linkage types.Anton Korobeynikov2006-09-142-13/+39
| | | | | | | | | | 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
* Remove a redundant syscall.Chris Lattner2006-07-281-25/+21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29405 91177308-0d34-0410-b5e6-96231b3b80d8
* eliminate some ugly code, using ConstantExpr::getWithOperands instead.Chris Lattner2006-07-141-51/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29149 91177308-0d34-0410-b5e6-96231b3b80d8
* Finish removal of EH usage from the Archive library. The REQUIRES_EH flagReid Spencer2006-07-071-1/+3
| | | | | | | | in lib/Bytecode/Archive/Makefile is now removed. One small step closer to a smaller LLVM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29067 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix Regression/Linker/2006-06-15-GlobalVarAnment.llChris Lattner2006-06-161-5/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28812 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix linking of inline asm objects.Chris Lattner2006-06-011-5/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28640 91177308-0d34-0410-b5e6-96231b3b80d8
* Add shufflevector supportChris Lattner2006-04-081-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27515 91177308-0d34-0410-b5e6-96231b3b80d8
* Add code to RemapOperand() to handle Instruction::ExtractElement andEvan Cheng2006-04-071-0/+12
| | | | | | | Instruction::InsertElement. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27477 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename methodChris Lattner2006-01-241-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25571 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for linking inline asmChris Lattner2006-01-231-0/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25560 91177308-0d34-0410-b5e6-96231b3b80d8
* add support for ConstantPacked to the linkerChris Lattner2006-01-191-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25467 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed style of curly brace. No functionality changes.John Criswell2006-01-171-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25414 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR521:Reid Spencer2006-01-101-19/+37
| | | | | | | | | | With these patches we implement the ability for the Linker library to keep track of which libraries were actually bytecode files (not archives) and cause their users to remove such files from the list of libraries to pass to the native linker. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25169 91177308-0d34-0410-b5e6-96231b3b80d8
* Be a little more explanatory in a comment.Reid Spencer2006-01-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25168 91177308-0d34-0410-b5e6-96231b3b80d8
* Adjust the constructor to the Linker class to take an argument that namesReid Spencer2005-12-131-2/+2
| | | | | | | | | the module being constructed. This is used to correctly name the module. Previously the name of the linker tool was used which produces confusing output when the module identifier is used in an error message. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24699 91177308-0d34-0410-b5e6-96231b3b80d8
* 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! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24619 91177308-0d34-0410-b5e6-96231b3b80d8
* DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE nowChris Lattner2005-10-241-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23940 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR495:Reid Spencer2005-07-072-18/+26
| | | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22349 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR495:Reid Spencer2005-07-072-2/+2
| | | | | | | | | | | | Change interface to Path class: readable -> canRead writable -> canWrite executable -> canExecute More (incremental) changes coming to close 495. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22345 91177308-0d34-0410-b5e6-96231b3b80d8
* Preserve CC's when linking modulesChris Lattner2005-05-091-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21799 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove trailing whitespaceMisha Brukman2005-04-214-56/+56
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21422 91177308-0d34-0410-b5e6-96231b3b80d8
* fix some 80 column violationsChris Lattner2005-03-151-4/+11
| | | | | | | Add support for programs that define main in a .a file, such as f2c'd programs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20631 91177308-0d34-0410-b5e6-96231b3b80d8
* consolidate LinkFiles into LinkItems, use lib_* iterators.Chris Lattner2005-03-152-85/+61
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20630 91177308-0d34-0410-b5e6-96231b3b80d8
* consolidate LinkLibraries into LinkItemsChris Lattner2005-03-152-76/+57
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20629 91177308-0d34-0410-b5e6-96231b3b80d8
* This mega patch converts us from using Function::a{iterator|begin|end} toChris Lattner2005-03-152-8/+8
| | | | | | | | | 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
* Add support for ".so" files compiled with LLVM which contain LLVM bytecode.Chris Lattner2005-02-192-3/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20253 91177308-0d34-0410-b5e6-96231b3b80d8
* 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.' git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20252 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor cleanup. No need to explicitly tell the compiler the template arguments.Chris Lattner2005-02-131-3/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20153 91177308-0d34-0410-b5e6-96231b3b80d8
* Print something useful for gccld -v with an archive.Chris Lattner2005-02-131-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20148 91177308-0d34-0410-b5e6-96231b3b80d8
* 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 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20135 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove un-needed #includes.Reid Spencer2004-12-201-3/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19061 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a compile error. config.h is now needed because DataTypes.h doesn'tReid Spencer2004-12-161-0/+1
| | | | | | | include it any more. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18993 91177308-0d34-0410-b5e6-96231b3b80d8
* * Fix header block.Reid Spencer2004-12-131-8/+8
| | | | | | | | | * Fix loop style per standards * Don't create a new Module when the Linker's module is released. * Add/fix function comments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18871 91177308-0d34-0410-b5e6-96231b3b80d8
* Add missing space in a comment.Reid Spencer2004-12-131-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18870 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix header and function comments.Reid Spencer2004-12-131-14/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18867 91177308-0d34-0410-b5e6-96231b3b80d8
* This file contains basic Linker facilities needed by all toolsReid Spencer2004-12-131-0/+166
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18860 91177308-0d34-0410-b5e6-96231b3b80d8
* Make LinkModules a static member functionReid Spencer2004-12-131-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18859 91177308-0d34-0410-b5e6-96231b3b80d8
* This file contains only the Linker's library linking supportReid Spencer2004-12-131-0/+70
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18858 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR351: \Reid Spencer2004-12-131-122/+12
| | | | | | | | | * Remove redundant static function LinkOneLibrary. \ * Remove unneded #includes \ * Convert FileSupport usage to sys::Path instead git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18857 91177308-0d34-0410-b5e6-96231b3b80d8