summaryrefslogtreecommitdiffstats
path: root/lld/lib/Driver/GnuLdDriver.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Rename GnuLDInputGraph.h -> GnuLdInputGraph.h for consistency with other files.Rui Ueyama2013-09-091-1/+1
| | | | llvm-svn: 190332
* Drop the context forceLoadAllArchives() support. Rename the isForceLoadJoerg Sonnenberger2013-09-081-5/+1
| | | | | | | | | attribute in LinkerInput to isWholeArchive and use that for deciding whether library archives should be expanded. Implement the -all_load option of the Darwin linker using this flag and drop the support for it in GNU mode. llvm-svn: 190275
* Change the parseFile argument from MemoryBuffer pointer to LinkerInputJoerg Sonnenberger2013-09-071-7/+6
| | | | | | reference. Move readFile logic into FileNode::createLinkerInput. llvm-svn: 190253
* Remove unused identifiers.Rui Ueyama2013-09-051-3/+1
| | | | llvm-svn: 190095
* Rename *Options.td -> <flavor>Options.td.Rui Ueyama2013-09-041-8/+8
| | | | | | | | | | | | | Before this patch, name of driver implementation is not consistent with its option table file. Specifically, LDOptions has a different prefix than GnuLdDriver. This patch renames option files, so that the option files have the same prefix as the corresponding driver files. Differential Revision: http://llvm-reviews.chandlerc.com/D1591 llvm-svn: 189895
* Recognize -rpath-link option and add arguments to ELFLinkingContext.Joerg Sonnenberger2013-09-031-0/+8
| | | | llvm-svn: 189883
* [lld] handle the case of errors from createLinkerInputShankar Easwaran2013-09-031-6/+26
| | | | | | | | | | This changes the interface of createLinkerInput to use ErrorOr, so that errors from the linker can be captured. Also adds a convenience function for error strings to be returned from file nodes. llvm-svn: 189871
* Finish -rpath implementation to actually create the DT_RPATH entries.Joerg Sonnenberger2013-09-031-0/+8
| | | | llvm-svn: 189847
* Add support for --sysroot.Joerg Sonnenberger2013-09-031-0/+4
| | | | llvm-svn: 189826
* Cosmetic changesRui Ueyama2013-09-031-2/+4
| | | | | | Differential Revision: http://llvm-reviews.chandlerc.com/D1577 llvm-svn: 189777
* [lld][ELF] Add Init/Fini supportShankar Easwaran2013-08-311-0/+8
| | | | | | | | This creates .init_array/.fini_array section for X86_64 ELF targets and executes init/fini functions specified by the -init/-fini options respectively. llvm-svn: 189719
* [lld][LinkingContext] Atoms created from command line options should be ↵Shankar Easwaran2013-08-311-0/+2
| | | | | | | | | | | | available in YAML This adds an API to the LinkingContext for flavors to add Internal files containing atoms that need to appear in the YAML output as well, when -emit-yaml switch is used. Flavors can add more internal files for other options that are needed. llvm-svn: 189718
* [lld][ELF][Cleanup] Create multiclass for variations in options usageShankar Easwaran2013-08-251-1/+1
| | | | llvm-svn: 189197
* [lld] Fix win7 failure on adding InputGraph functionalityShankar Easwaran2013-08-211-2/+2
| | | | llvm-svn: 188961
* add InputGraph functionalityShankar Easwaran2013-08-211-124/+155
| | | | llvm-svn: 188958
* Rename TargetInfo -> LinkingContext.Rui Ueyama2013-08-061-9/+9
| | | | | | | | | Also change some local variable names: "ti" -> "context" and "_targetInfo" -> "_context". Differential Revision: http://llvm-reviews.chandlerc.com/D1301 llvm-svn: 187823
* Remove the SUPPORT_ALIASARGS defineHans Wennborg2013-08-011-2/+0
| | | | | | It is not needed after LLVM r187546. llvm-svn: 187551
* Option parsing tables: pick up AliasArgs from the OPTION macro.Hans Wennborg2013-07-311-3/+6
| | | | | | | | | This depends on LLVM r187537. The SUPPORT_ALIASARGS macro will be removed once all option parsing clients have been updated. llvm-svn: 187541
* Revert "Don't pass llvm::errs() all over the place. Diagnostics always go to ↵Rafael Espindola2013-07-151-13/+18
| | | | | | | | stderr." This reverts commit 185657. It will be used by unit tests. llvm-svn: 186366
* Don't pass llvm::errs() all over the place. Diagnostics always go to stderr.Rafael Espindola2013-07-041-18/+13
| | | | llvm-svn: 185657
* Return 0 when processing --help. This matches gnu ld and gold.Rafael Espindola2013-07-041-10/+15
| | | | llvm-svn: 185655
* [lld] rename member variable name.Shankar Easwaran2013-06-241-1/+1
| | | | | | | | | | This renames variable name to reflect initial undefined symbols that are defined by the linker -u option. This doesnot change any functionality in lld, and updates code to reflect Nick's comment. llvm-svn: 184682
* [ELF] add -u/--undefined option, to define undefined symbolsShankar Easwaran2013-06-191-0/+7
| | | | llvm-svn: 184266
* [ELF] add NMAGIC/OMAGIC supportShankar Easwaran2013-06-161-0/+19
| | | | llvm-svn: 184055
* [lld][elf] Add --dynamic-linker option to the ELF linker.Shankar Easwaran2013-05-291-0/+5
| | | | | | | | | Users can override the default value of the dynamic linker to be set to the one that appears in the command line. The path can even be empty!. Added a test for the option. llvm-svn: 182889
* This adds functionality for undefined atoms from dynamic libraries to be addedShankar Easwaran2013-04-111-50/+63
| | | | | | | | | | | | to the list of undefined atoms. The processing of undefined atoms from dynamic libraries is controlled by use-shlib-undefines command line option. This patch also adds additional command line arguments to allow/disallow unresolved symbols from shared libraries and mimics GNU ld behavior. llvm-svn: 179257
* This is my Driver refactoring patch. Nick Kledzik2013-04-041-0/+241
The major changes are: 1) LinkerOptions has been merged into TargetInfo 2) LinkerInvocation has been merged into Driver 3) Drivers no longer convert arguments into an intermediate (core) argument list, but instead create a TargetInfo object and call setter methods on it. This is only how in-process linking would work. That is, you can programmatically set up a TargetInfo object which controls the linking. 4) Lots of tweaks to test suite to work with driver changes 5) Add the DarwinDriver 6) I heavily doxygen commented TargetInfo.h Things to do after this patch is committed: a) Consider renaming TargetInfo, given its new roll. b) Consider pulling the list of input files out of TargetInfo. This will enable in-process clients to create one TargetInfo the re-use it with different input file lists. c) Work out a way for Drivers to format the warnings and error done in core linking. llvm-svn: 178776
OpenPOWER on IntegriCloud