summaryrefslogtreecommitdiffstats
path: root/llvm/tools/gccld/GenerateCode.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Implement PR679:Reid Spencer2005-12-221-5/+8
| | | | | | | | | | * 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
* add a hack that fixes:Chris Lattner2005-11-031-1/+4
| | | | | | | | | | llvm-gcc main.c -Wl,-native -o a.out -g This is important because it used by many configure scripts. John, please pull this onto the 1.6 branch. llvm-svn: 24163
* Fix PR637Chris Lattner2005-10-181-6/+4
| | | | llvm-svn: 23784
* Speed up isBytecodeLPath from 20s to .01s in common cases. This makes -nativeChris Lattner2005-09-231-17/+11
| | | | | | | not completely painful to use. Once we decide a directory has a bytecode library, we know it this function returns true, no need to scan entire directories. llvm-svn: 23405
* 1. Do not use .c_str() to keep a persistent handle on a temporary string.Chris Lattner2005-09-231-23/+32
| | | | | | | | 2. Concatenate -lfoo and -L/bar options into a single option instead of passing "-L /bar" (for example) which doesn't work on Darwin. 3. Send -v output to stderr instead of stdout llvm-svn: 23404
* Pass -export-dynamic to gcc when compiling with -native and the link isChris Lattner2005-08-021-4/+5
| | | | | | | | performed with -export-dynamic (aka. -disable-internalize). Patch by Nicholas Riley! llvm-svn: 22601
* Make sure we don't error out if an invalid path is used, just simplyReid Spencer2005-07-081-1/+12
| | | | | | exit from isBytecodeLPath with "false". llvm-svn: 22360
* For PR495:Reid Spencer2005-07-071-9/+5
| | | | | | | | | | | | | | | | | | | | | 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-6/+6
| | | | llvm-svn: 21428
* Eliminate trailing spaces at end-of-lineMisha Brukman2005-04-201-7/+7
| | | | llvm-svn: 21372
* * Print commands as we execute them with `-v'Misha Brukman2005-04-201-4/+16
| | | | | | | * Add option `-save-temps' Patch contributed by Markus Oberhumer. llvm-svn: 21367
* The first argument to ExecuteAndWait should be the program name, but pointedChris Lattner2005-04-101-1/+4
| | | | | | out by Markus F.X.J. Oberhumer. llvm-svn: 21211
* Changes to enable creation of native executables directly from gccld and toReid Spencer2005-02-281-2/+89
| | | | | | | 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-0/+3
| | | | llvm-svn: 20166
* For PR351:Reid Spencer2004-12-191-14/+16
| | | | | | * Support changes in sys::Program::ExecuteAndWait interface llvm-svn: 19044
* For PR351:Reid Spencer2004-12-141-56/+29
| | | | | | | * Change ExecWait calls to sys::Program::ExecuteAndWait * Convert to use sys::Path where it makes sense llvm-svn: 18929
* This pass is no longer needed.Chris Lattner2004-12-101-1/+0
| | | | llvm-svn: 18782
* Turn on ipsccp by default instead of simple IPCPChris Lattner2004-12-101-1/+2
| | | | llvm-svn: 18753
* Recognize --strip-all as a synonym for -s.Chris Lattner2004-12-021-7/+8
| | | | | | 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-7/+7
| | | | llvm-svn: 17911
* Even with -disable-opt we should still internalize and strip if requested.Chris Lattner2004-11-161-13/+13
| | | | llvm-svn: 17903
* Linker.h has a new home.Reid Spencer2004-11-141-1/+1
| | | | llvm-svn: 17801
* Don't miss global optimizations because we run before the inlinerChris Lattner2004-10-111-0/+1
| | | | llvm-svn: 16913
* Rename passChris Lattner2004-10-071-3/+2
| | | | llvm-svn: 16801
* Changes For Bug 352Reid Spencer2004-09-011-2/+2
| | | | | | | | 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
* This pass has proven its metal, remove -disable option.Chris Lattner2004-08-021-5/+1
| | | | llvm-svn: 15411
* Run DSE at link-time, and turn on an IP alias analysis by default in gccld!Chris Lattner2004-07-271-1/+7
| | | | | | The -disable-globalsmodref is temporary and will be removed eventually. llvm-svn: 15268
* Linker.h moved to include/llvm/SupportMisha Brukman2004-06-231-1/+1
| | | | llvm-svn: 14351
* Move some functions out of gccld.cpp to GenerateCode.cpp. This allows usChris Lattner2004-06-021-0/+79
| | | | | | | to reduce the inter-file interface in the gccld tool and gets some uninteresting code out of gccld.cpp. llvm-svn: 13942
* Add a couple more IPO'sChris Lattner2004-04-121-0/+3
| | | | llvm-svn: 12863
* Disable strict alias analysis in the backend c compiler, as the code weChris Lattner2004-04-081-0/+1
| | | | | | generate is not TBAA safe. llvm-svn: 12774
* Revert previous patch, I'm a moron :)Chris Lattner2004-04-081-6/+5
| | | | llvm-svn: 12773
* Right, we break strict aliasing requirements. Make sure to disable strictChris Lattner2004-04-081-5/+6
| | | | | | aliasing in the C compiler. llvm-svn: 12772
* Minor cleanupsChris Lattner2004-04-061-32/+18
| | | | llvm-svn: 12700
* Add a new gccld -native-cbe option which causes gccld to generate native codeChris Lattner2004-04-061-1/+18
| | | | | | for the application with the C backend instead of the native LLVM code generator llvm-svn: 12698
* Run the new pass in gccld now that it passes all testsChris Lattner2004-03-071-0/+4
| | | | llvm-svn: 12196
* We have this snazzy link-time optimizer. How about we start using it? ThisChris Lattner2004-02-261-2/+6
| | | | | | | removes some cruft from 255.vortex, cleaning up after DAE and IPCP, which do horrible, beautiful, things to vortex. llvm-svn: 11861
* Add a new pass, run internalize firstChris Lattner2004-02-251-7/+11
| | | | llvm-svn: 11839
* Fixed PR#197. The libcrtend library is removed from the library linking listJohn Criswell2004-01-261-2/+4
| | | | | | when creating native executables. llvm-svn: 10979
* Make sure to verify the result before writing out the bytecode file. Not doingChris Lattner2004-01-141-0/+3
| | | | | | so can cause obscure errors downstream. llvm-svn: 10840
* The function resolving pass must be run, even if -disable-opt is specifiedChris Lattner2003-11-281-6/+6
| | | | llvm-svn: 10250
* For consistency, removed space between function name and left paren in functionMisha Brukman2003-11-201-15/+15
| | | | | | call, i.e. [ addPass (...) ] => [ addPass(...) ] llvm-svn: 10105
* Add a -verify option to verify the results of gccld passes.Brian Gaeke2003-11-161-43/+63
| | | | | | Add a -disable-opt option to turn off gccld optimization passes. llvm-svn: 10040
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-111-0/+5
| | | | llvm-svn: 9903
* Give gccld more gutsChris Lattner2003-11-091-0/+8
| | | | llvm-svn: 9835
* Turn on the inliner by default at link-timeChris Lattner2003-10-241-0/+10
| | | | llvm-svn: 9477
* Turn on the IPCP pass by default. It has passed all of the testsChris Lattner2003-10-231-0/+3
| | | | llvm-svn: 9435
* fix file headerChris Lattner2003-10-201-1/+0
| | | | llvm-svn: 9294
* Added copyright header to all C++ source files.John Criswell2003-10-201-0/+8
| | | | llvm-svn: 9291
* Doxygen-ified function comments.Misha Brukman2003-09-301-61/+43
| | | | llvm-svn: 8771
OpenPOWER on IntegriCloud