summaryrefslogtreecommitdiffstats
path: root/llvm/tools/gccld/gccld.cpp
Commit message (Collapse)AuthorAgeFilesLines
* For PR521:Reid Spencer2006-01-101-1/+13
| | | | | | | | | 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. llvm-svn: 25169
* Implement PR679:Reid Spencer2005-12-221-1/+6
| | | | | | | | | | * Changed the -rpath option from cl::opt to cl::list * Changed the interface to GenerateNative to take a std::vector<std::string> instead of just a std::string * Changed GenerateNative to generate multiple -Wl,-rpath, options to be passed to gcc. llvm-svn: 24930
* Remove -start-group and -end-group no-op options, accidentally committedReid Spencer2005-12-141-5/+0
| | | | | | in last patch. llvm-svn: 24710
* Adjust the constructor to the Linker class to take an argument that namesReid Spencer2005-12-131-1/+5
| | | | | | | | 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. llvm-svn: 24699
* Allow users to specify -Wl,-native* multiple times if they pleaseChris Lattner2005-11-171-2/+2
| | | | llvm-svn: 24392
* Pass -export-dynamic to gcc when compiling with -native and the link isChris Lattner2005-08-021-4/+4
| | | | | | | | performed with -export-dynamic (aka. -disable-internalize). Patch by Nicholas Riley! llvm-svn: 22601
* Final Changes For PR495:Reid Spencer2005-07-081-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | This chagne just renames some sys::Path methods to ensure they are not misused. The Path documentation now divides methods into two dimensions: Path/Disk and accessor/mutator. Path accessors and mutators only operate on the Path object itself without making any disk accesses. Disk accessors and mutators will also access or modify the file system. Because of the potentially destructive nature of disk mutators, it was decided that all such methods should end in the work "Disk" to ensure the user recognizes that the change will occur on the file system. This patch makes that change. The method name changes are: makeReadable -> makeReadableOnDisk makeWriteable -> makeWriteableOnDisk makeExecutable -> makeExecutableOnDisk setStatusInfo -> setStatusInfoOnDisk createDirectory -> createDirectoryOnDisk createFile -> createFileOnDisk createTemporaryFile -> createTemporaryFileOnDisk destroy -> eraseFromDisk rename -> renamePathOnDisk These changes pass the Linux Deja Gnu tests. llvm-svn: 22354
* For PR495:Reid Spencer2005-07-071-4/+4
| | | | | | | | | | | | | | | | | | | | | 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
* Remove trailing whitespaceMisha Brukman2005-04-221-17/+17
| | | | llvm-svn: 21428
* Eliminate trailing spaces at end-of-lineMisha Brukman2005-04-201-11/+11
| | | | llvm-svn: 21372
* * Print commands as we execute them with `-v'Misha Brukman2005-04-201-14/+22
| | | | | | | * Add option `-save-temps' Patch contributed by Markus Oberhumer. llvm-svn: 21367
* Changes to enable creation of native executables directly from gccld and toReid Spencer2005-02-281-69/+85
| | | | | | | ensure that -L paths don't contain both bytecode and native libraries. This patch contributed by Adam Treat. llvm-svn: 20370
* Make sure to null terminate argument lists!Chris Lattner2005-02-131-1/+1
| | | | llvm-svn: 20166
* Use binary mode for reading/writing bytecode filesJeff Cohen2005-01-221-1/+3
| | | | llvm-svn: 19751
* Use explicit construction of sys::Path from std::string because theReid Spencer2004-12-211-1/+1
| | | | | | constructor is "explicit". llvm-svn: 19078
* sys::CopyString throws an exception on error which will be caught by gccldReid Spencer2004-12-181-4/+1
| | | | | | main function. llvm-svn: 19029
* The CopyFile function got moved into the sys namespace.Reid Spencer2004-12-181-1/+1
| | | | llvm-svn: 19026
* For PR351:Reid Spencer2004-12-161-10/+13
| | | | | | | | | | | * removeFile() -> sys::Path::destroyFile() * remove extraneous toString() calls * convert local variables representing path names from std::string to sys::Path * Use sys::Path objects with FileRemove instead of std::string * Use sys::Path methods for construction of path names llvm-svn: 19001
* For PR351:Reid Spencer2004-12-141-13/+12
| | | | | | | * Change ExecWait calls to sys::Program::ExecuteAndWait * Convert to use sys::Path where it makes sense llvm-svn: 18929
* For PR351:Reid Spencer2004-12-131-11/+12
| | | | | | Adjust to interface change for FindExecutable. llvm-svn: 18920
* For PR351:Reid Spencer2004-12-131-3/+3
| | | | | | | Replace MakeFileReadable and MakeFileExecutable (from FileUtilities) with sys::Path::makeReadable and sys::Path:makeExecutable, respectively. llvm-svn: 18909
* Make the loop termination condition clear when building the set of items toReid Spencer2004-12-131-3/+2
| | | | | | pass to the Linker::LinkInItems function. llvm-svn: 18894
* Convert to use new Linker class interfaceReid Spencer2004-12-131-20/+59
| | | | llvm-svn: 18864
* Do not internalize a module if -link-as-library is passed.Chris Lattner2004-12-121-2/+9
| | | | llvm-svn: 18825
* When -link-as-library, add -l options to Module's deplibsReid Spencer2004-12-081-1/+8
| | | | llvm-svn: 18617
* Fix PR139:\Reid Spencer2004-12-051-21/+20
| | | | | | | When not linking as a library, use LinkItems to retain command line order of \ linking, otherwise use LinkFiles llvm-svn: 18549
* Recognize --strip-all as a synonym for -s.Chris Lattner2004-12-021-2/+11
| | | | | | Add -S and --strip-debug option support. llvm-svn: 18441
* -disable-opt is not -O0, it's okay for it to disable internalize.Chris Lattner2004-11-171-1/+2
| | | | llvm-svn: 17911
* Linker.h has a new home.Reid Spencer2004-11-141-1/+1
| | | | llvm-svn: 17801
* Provide exception handlingReid Spencer2004-11-141-110/+124
| | | | llvm-svn: 17787
* Changes For Bug 352Reid Spencer2004-09-011-3/+3
| | | | | | | | Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. llvm-svn: 16137
* The functions in Signal.h are now in the llvm::sys namespace - adjustReid Spencer2004-08-291-6/+6
| | | | llvm-svn: 16091
* Linker.h moved to include/llvm/SupportMisha Brukman2004-06-231-1/+1
| | | | llvm-svn: 14351
* Make gccld copy the llvm-stub program to be the execution wrapper forChris Lattner2004-06-021-1/+16
| | | | | | | | | | | bytecode files on win32 systems. We keep the shell script on unix systems because it is much more transparent for the users and supports -load options. This allows llvmgcc work correctly on win32 systems without the -native or -native-cbe options. llvm-svn: 13946
* Move some functions out of gccld.cpp to GenerateCode.cpp. This allows usChris Lattner2004-06-021-95/+3
| | | | | | | to reduce the inter-file interface in the gccld tool and gets some uninteresting code out of gccld.cpp. llvm-svn: 13942
* Refactor a bit of code into a function, no functionality changes.Chris Lattner2004-06-021-29/+36
| | | | llvm-svn: 13941
* Header file movedChris Lattner2004-05-271-1/+1
| | | | llvm-svn: 13813
* Allow the user to set the LLVMINTERP environment variable as a workaround, forBrian Gaeke2004-05-071-2/+5
| | | | | | | | | | | | when they have to run a gccld shell script without having lli in their path. This is intended to address Bug 289. Also, emit the traditional syntax ${1+"$@"} for passing all of a shell script's args to a subprocess. If you have arguments that have spaces in them, $* will not preserve the quoting (i.e., the quoted string "foo bar" as an argument will end up as two arguments "foo" "bar" to lli.) llvm-svn: 13414
* Add a new gccld -native-cbe option which causes gccld to generate native codeChris Lattner2004-04-061-0/+27
| | | | | | for the application with the C backend instead of the native LLVM code generator llvm-svn: 12698
* Make sure to print a stack trace whenever an error signal is delivered toChris Lattner2004-02-191-0/+1
| | | | | | the tool. llvm-svn: 11633
* Added the -h option for compatibility with other linkers.John Criswell2003-12-091-0/+2
| | | | llvm-svn: 10335
* Fix compatibility with gcc 3.4Chris Lattner2003-11-291-5/+3
| | | | llvm-svn: 10262
* I'm gonna be picky and say we don't really need that trailing slash "lib/"Misha Brukman2003-11-241-1/+1
| | | | llvm-svn: 10196
* Make sure we ONLY add a `-load' switch to the JIT command line if the file isMisha Brukman2003-11-241-1/+2
| | | | | | verified as having an ELF header. This fixes PR151. llvm-svn: 10195
* When writing out the runner script, add -load=<lib> lines to pull in all theMisha Brukman2003-11-201-1/+18
| | | | | | shared objects automagically, so it doesn't have to be done by hand. llvm-svn: 10114
* * Doxygenified comments, simplifying them and shortening in the processMisha Brukman2003-11-201-67/+43
| | | | | | * Eliminated extra space llvm-svn: 10104
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-111-0/+5
| | | | llvm-svn: 9903
* Do not assume the first file is a bytecode file. Instead, construct a dummyBrian Gaeke2003-11-051-5/+3
| | | | | | | | Module and link things into that. Also, fix a typo in an error message. llvm-svn: 9748
* Make -r work, fixing PR 91Chris Lattner2003-11-051-3/+4
| | | | llvm-svn: 9724
* If linking a library, do not link other libraries, like libc, into it!Chris Lattner2003-11-031-1/+4
| | | | | | This fixes lots of annoying warnings and error messages llvm-svn: 9677
OpenPOWER on IntegriCloud