summaryrefslogtreecommitdiffstats
path: root/llvm/lib/LibDriver
Commit message (Collapse)AuthorAgeFilesLines
* Move lib/LibDriver -> lib/ToolDrivers/llvm-lib. NFCI.Peter Collingbourne2017-05-134-226/+0
| | | | | | | This reorganisation prevents us from cluttering up the top-level lib directory with more driver libraries such as llvm-dlltool (see D29892). llvm-svn: 302995
* Fix some ArgList uses after API change in r300135.Richard Smith2017-04-121-1/+1
| | | | llvm-svn: 300139
* LibDriver: Allow resource files to be archive members.Peter Collingbourne2016-12-151-2/+4
| | | | | | | | It seems pointless to add a resource to an archive because it won't have any symbols to link against (and link.exe doesn't have an equivalent of --whole-archive), but lib.exe allows it for some reason. llvm-svn: 289859
* LibDriver: Reject inputs that are not COFF objects or bitcode files.Peter Collingbourne2016-12-141-0/+7
| | | | | | | | Fixes PR31372. Differential Revision: https://reviews.llvm.org/D27776 llvm-svn: 289726
* Object: Replace NewArchiveIterator with a simpler NewArchiveMember class. NFCI.Peter Collingbourne2016-06-291-4/+12
| | | | | | | | | | | | | | | | The NewArchiveIterator class has a problem: it requires too much context. Any memory buffers added to the archive must be stored within an Archive::Member, which must have an associated Archive. This makes it harder than necessary to create new archive members (or new archives entirely) from scratch using memory buffers. This patch replaces NewArchiveIterator with a NewArchiveMember class that stores just the memory buffer and the information that goes into the archive member header. Differential Revision: http://reviews.llvm.org/D21721 llvm-svn: 274183
* LibDriver: Silently do nothing when provided no inputs.Peter Collingbourne2016-04-131-2/+2
| | | | | | | | | This behavior is strange, but it matches lib.exe. Based on a patch by Nico Weber. Fixes PR27335. llvm-svn: 266236
* Remove autoconf supportChris Bieneman2016-01-261-20/+0
| | | | | | | | | | | | | | | | Summary: This patch is provided in preparation for removing autoconf on 1/26. The proposal to remove autoconf on 1/26 was discussed on the llvm-dev thread here: http://lists.llvm.org/pipermail/llvm-dev/2016-January/093875.html "I felt a great disturbance in the [build system], as if millions of [makefiles] suddenly cried out in terror and were suddenly silenced. I fear something [amazing] has happened." - Obi Wan Kenobi Reviewers: chandlerc, grosbach, bob.wilson, tstellarAMD, echristo, whitequark Subscribers: chfast, simoncook, emaste, jholewinski, tberghammer, jfb, danalbert, srhines, arsenm, dschuff, jyknight, dsanders, joker.eph, llvm-commits Differential Revision: http://reviews.llvm.org/D16471 llvm-svn: 258861
* [Option] Use an ArrayRef to store the Option Infos in OptTable. NFCCraig Topper2015-10-211-1/+1
| | | | llvm-svn: 250901
* There is only one saver of strings.Rafael Espindola2015-08-131-1/+1
| | | | llvm-svn: 244854
* LibDriver: Replace references to lld-link2 with lld-link.Peter Collingbourne2015-08-061-1/+1
| | | | llvm-svn: 244246
* Add support for producing thin archives in llvm-lib.Rafael Espindola2015-07-172-1/+3
| | | | | | I will send an entry in docs/CommandGuide for review today. llvm-svn: 242533
* For new archive member we only need to store the full path.Rafael Espindola2015-07-151-2/+1
| | | | | | | We were storing both the path and the file name, which was redundant and easy to get confused up with. llvm-svn: 242347
* Initial support for writing thin archives.Rafael Espindola2015-07-151-1/+1
| | | | llvm-svn: 242269
* Add support deterministic output in llvm-ar and make it the default.Rafael Espindola2015-07-131-1/+2
| | | | llvm-svn: 242061
* Start adding support for writing archives in BSD format.Rafael Espindola2015-07-081-2/+4
| | | | | | | | No support for the symbol table yet (but will hopefully add it today). We always use the long filename format so that we can align the member, which is an advantage of the BSD format. llvm-svn: 241721
* LibDriver: Fix output path inference.Peter Collingbourne2015-07-081-11/+7
| | | | | | | | | The inferred output file name is based on the first input file, not the first one with extension .obj. The output file was also being written to the wrong directory; it needs to be written to whichever directory on the libpath it was found in. This change fixes both issues. llvm-svn: 241710
* Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC)Alexander Kornienko2015-06-231-1/+1
| | | | | | Apparently, the style needs to be agreed upon first. llvm-svn: 240390
* Modify ParseArgs to return the InputArgList by value - there's no need for ↵David Blaikie2015-06-221-10/+10
| | | | | | | | | | | | dynamic allocation/ownership here The one caller that does anything other than keep this variable on the stack is the single use of DerivedArgList in Clang, which is a bit more interesting but can probably be cleaned up/simplified a bit further (have DerivedArgList take ownership of the InputArgList rather than needing to reference its Args indirectly) which I'll try to after this. llvm-svn: 240345
* ArrayRef-ify libDriverMainDavid Blaikie2015-06-211-8/+7
| | | | llvm-svn: 240234
* ArrayRef-ify ParseArgsDavid Blaikie2015-06-211-2/+2
| | | | llvm-svn: 240233
* LibDriver: implement /libpath and $LIB; ignore /ignore and /machine.Peter Collingbourne2015-06-202-2/+51
| | | | llvm-svn: 240203
* Fixed/added namespace ending comments using clang-tidy. NFCAlexander Kornienko2015-06-191-1/+1
| | | | | | | | | | | | | The patch is generated using this command: tools/clang/tools/extra/clang-tidy/tool/run-clang-tidy.py -fix \ -checks=-*,llvm-namespace-comment -header-filter='llvm/.*|clang/.*' \ llvm/lib/ Thanks to Eugene Kosov for the original patch! llvm-svn: 240137
* Bring in a BumpPtrStringSaver from lld and simplify the interface.Rafael Espindola2015-06-131-22/+3
| | | | | | | | | | | | StringSaver now always saves to a BumpPtrAllocator. The only reason for having the virtual saveImpl is so lld can have a thread safe version. The reason for the distinct BumpPtrStringSaver class is to avoid the virtual destructor. llvm-svn: 239669
* LibDriver, llvm-lib: introduce.Peter Collingbourne2015-06-095-0/+200
llvm-lib is intended to be a lib.exe compatible utility that also understands bitcode. The implementation lives in a library so that lld can use it to implement /lib. Differential Revision: http://reviews.llvm.org/D10297 llvm-svn: 239434
OpenPOWER on IntegriCloud