summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-ld/Optimize.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove llvm-ld and llvm-stub (which is only used by llvm-ld).Michael J. Spencer2012-04-191-130/+0
| | | | | | | | | | | | | | | | llvm-ld is no longer useful and causes confusion and so it is being removed. * Does not work very well on Windows because it must call a gcc like driver to assemble and link. * Has lots of hard coded paths which are wrong on many systems. * Does not understand most of ld's options. * Can be partially replaced by llvm-link | opt | {llc | as, llc -filetype=obj} | ld, or fully replaced by Clang. I know of no production use of llvm-ld, and hacking use should be replaced by Clang's driver. llvm-svn: 155147
* Move methods in PassManagerBuilder offline.Rafael Espindola2011-08-021-0/+4
| | | | llvm-svn: 136727
* move PassManagerBuilder.h to IPO. This is a non intuitive place to put it,Rafael Espindola2011-08-021-1/+1
| | | | | | | but it solves a layering violation since things in Support are not supposed to use things in Transforms. llvm-svn: 136726
* fix a file system case sensitivity issue.Chris Lattner2011-05-221-1/+1
| | | | llvm-svn: 131828
* switch llvm-ld. It has a terrible mechanism that people can add extraChris Lattner2011-05-221-6/+4
| | | | | | passes, it should be converted to use extension points. llvm-svn: 131823
* Merge System into Support.Michael J. Spencer2010-11-291-1/+1
| | | | llvm-svn: 120298
* Trim #includes.Dan Gohman2010-03-241-5/+0
| | | | llvm-svn: 99416
* Convert more tools code from cerr and cout to errs() and outs().Dan Gohman2009-07-161-1/+0
| | | | llvm-svn: 76070
* Use errs() instead of std::cerr.Dan Gohman2009-07-151-2/+3
| | | | llvm-svn: 75791
* Change LTO to run the global opt pass twice.Daniel Dunbar2009-06-031-1/+1
| | | | | | | | | | | | | | | | | | | | | - This matches llvm-ld. It took a bit of archeology to figure out what the right thing to do was (whether this was intentionally added or intentionally removed). My final conclusion is that Chris added this intentionally here: http://llvm.org/viewvc/llvm-project?view=rev&revision=16913 but the changes weren't propogated to llvm-ld until here: http://llvm.org/viewvc/llvm-project?view=rev&revision=34058 which was after lto.cpp had been cloned off (of llvm-ld), here: http://llvm.org/viewvc/llvm-project?view=rev&revision=29494 From the commit message, it looks like the motivation for running global opt again is because we ran it prior to inlining. Based on that I updated the comment and also only run the pass if we actually ran the inliner. Chris, please review. llvm-svn: 72811
* Add createStandardLTOPasses to StandardPasses.h, and move lto and llvm-ld over.Daniel Dunbar2009-06-031-65/+4
| | | | | | | - I know it sounds crazy, but I think all the pass lists are now coalesced into StandardPasses.h. llvm-svn: 72805
* Add the function attributes pass during LTO time.Nick Lewycky2009-02-261-1/+2
| | | | llvm-svn: 65508
* Remove GCSE, ValueNumbering, and LoadValueNumbering. These have been ↵Owen Anderson2008-08-151-1/+0
| | | | | | deprecated for almost a year; it's finally time for them to go away. llvm-svn: 54822
* Use ADCE instead of just DCE. ADCE will better clean up after jump threading,Owen Anderson2008-07-021-1/+1
| | | | | | for instance. llvm-svn: 53045
* run mem2reg after the second jump threading pass in llvm-ld.Chris Lattner2008-06-251-1/+2
| | | | llvm-svn: 52728
* remove some dead options.Chris Lattner2008-06-251-29/+0
| | | | llvm-svn: 52726
* Move MemCpyOpt after GVN.Owen Anderson2008-04-221-1/+1
| | | | llvm-svn: 50097
* run the jump threading pass in llvm-ld alsoChris Lattner2008-04-211-1/+3
| | | | llvm-svn: 50027
* Factor a bunch of functionality related to memcpy and memset transforms out of Owen Anderson2008-04-091-0/+1
| | | | | | GVN and into its own pass. llvm-svn: 49419
* style and spellingAndrew Lenharth2008-03-191-2/+2
| | | | llvm-svn: 48562
* llvm-ld deserves disable-verify too. opt shouldn't have all the fun options.Andrew Lenharth2008-03-191-1/+5
| | | | llvm-svn: 48550
* remove attributions from tools.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45421
* Turn GVN on by default.Owen Anderson2007-09-081-2/+1
| | | | llvm-svn: 41787
* Rename FastDSE to just DSE.Owen Anderson2007-08-011-1/+1
| | | | llvm-svn: 40668
* Turn on FastDSE by default.Owen Anderson2007-07-171-1/+1
| | | | | | | Note: FastDSE now equals or exceeds the results of old DSE on all of SPEC2000 and SPEC2006. Unless major problems show up in the testers, it will likely completely replace old DSE in the near future. llvm-svn: 39986
* if internalize is disabled, don't run the pass at all!Chris Lattner2007-06-061-1/+2
| | | | llvm-svn: 37477
* run a late dce pass to clean up extra cruft.Chris Lattner2007-04-051-0/+1
| | | | llvm-svn: 35684
* Now LICM is a LoopPass.Devang Patel2007-03-071-0/+1
| | | | llvm-svn: 35001
* For PR1153:Reid Spencer2007-02-081-13/+32
| | | | | | | | Make llvm-ld more gccld-like by having it run the same set of passes. The delta was probably due to lack of llvm-ld being maintained. Just another reason to have only one optimizing linker in in LLVM. llvm-svn: 34058
* For PR411:Reid Spencer2007-02-051-6/+0
| | | | | | | | | | This patch replaces the SymbolTable class with ValueSymbolTable which does not support types planes. This means that all symbol names in LLVM must now be unique. The patch addresses the necessary changes to deal with this and removes code no longer needed as a result. This completes the bulk of the changes for this PR. Some cleanup patches will follow. llvm-svn: 33918
* target constructors are never usedChris Lattner2006-12-011-4/+1
| | | | llvm-svn: 32099
* Need <iostream> for the time being.Bill Wendling2006-11-171-0/+1
| | | | llvm-svn: 31821
* eliminate only use of FilteredPassNameParserChris Lattner2006-08-271-2/+1
| | | | llvm-svn: 29916
* Make sure the verify pass gets run after the user's loaded passes as wellReid Spencer2006-08-201-3/+2
| | | | | | when the verify-each option is given. llvm-svn: 29783
* Rename the -verify option to be -verify-each so that it doesn't conflictReid Spencer2006-08-201-4/+4
| | | | | | | with the -verify pass option. It is also more accurate in that this option causes a verify option to be run after every pass. llvm-svn: 29782
* Convert llvm-ld to use the PluginLoader like opt instead of having itsReid Spencer2006-08-201-19/+31
| | | | | | | | | | one-off (and broken) RunOptimizations function. Also, run some cleanup passes after the user's loaded passes run. This make sure to clean up any cruft left around by thos passes. This patch was inspired by a patch submitted by Bram Adams. llvm-svn: 29781
* Don't pass target name into TargetData anymore, it is never used or needed.Chris Lattner2006-06-161-1/+1
| | | | llvm-svn: 28831
* Shorten a value description so --help out isn't so wide.Reid Spencer2006-06-071-1/+1
| | | | llvm-svn: 28721
* Fix a -pedantic warningChris Lattner2006-06-021-1/+1
| | | | llvm-svn: 28670
* Fix PR637Chris Lattner2005-10-181-6/+4
| | | | llvm-svn: 23784
* Remove trailing whitespaceMisha Brukman2005-04-221-14/+14
| | | | llvm-svn: 21428
* Revert the last patch. We really do need SimplyCFG.Reid Spencer2004-12-111-0/+3
| | | | llvm-svn: 18787
* Remove this pass as its no longer needed.Reid Spencer2004-12-101-3/+0
| | | | llvm-svn: 18783
* Adjust to change in pass nameChris Lattner2004-12-021-2/+2
| | | | llvm-svn: 18442
* First cut at implementing generic link-time OptimizationReid Spencer2004-11-201-0/+194
llvm-svn: 18047
OpenPOWER on IntegriCloud