aboutsummaryrefslogtreecommitdiffstats
path: root/tools/llvm-ld/Optimize.cpp
Commit message (Collapse)AuthorAgeFilesLines
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136726 91177308-0d34-0410-b5e6-96231b3b80d8
* fix a file system case sensitivity issue.Chris Lattner2011-05-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131828 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131823 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge System into Support.Michael J. Spencer2010-11-291-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120298 91177308-0d34-0410-b5e6-96231b3b80d8
* Trim #includes.Dan Gohman2010-03-241-5/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99416 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert more tools code from cerr and cout to errs() and outs().Dan Gohman2009-07-161-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76070 91177308-0d34-0410-b5e6-96231b3b80d8
* Use errs() instead of std::cerr.Dan Gohman2009-07-151-2/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75791 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72811 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72805 91177308-0d34-0410-b5e6-96231b3b80d8
* Add the function attributes pass during LTO time.Nick Lewycky2009-02-261-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65508 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54822 91177308-0d34-0410-b5e6-96231b3b80d8
* Use ADCE instead of just DCE. ADCE will better clean up after jump threading,Owen Anderson2008-07-021-1/+1
| | | | | | | for instance. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53045 91177308-0d34-0410-b5e6-96231b3b80d8
* run mem2reg after the second jump threading pass in llvm-ld.Chris Lattner2008-06-251-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52728 91177308-0d34-0410-b5e6-96231b3b80d8
* remove some dead options.Chris Lattner2008-06-251-29/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52726 91177308-0d34-0410-b5e6-96231b3b80d8
* Move MemCpyOpt after GVN.Owen Anderson2008-04-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50097 91177308-0d34-0410-b5e6-96231b3b80d8
* run the jump threading pass in llvm-ld alsoChris Lattner2008-04-211-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50027 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49419 91177308-0d34-0410-b5e6-96231b3b80d8
* style and spellingAndrew Lenharth2008-03-191-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48562 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-ld deserves disable-verify too. opt shouldn't have all the fun options.Andrew Lenharth2008-03-191-1/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48550 91177308-0d34-0410-b5e6-96231b3b80d8
* remove attributions from tools.Chris Lattner2007-12-291-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45421 91177308-0d34-0410-b5e6-96231b3b80d8
* Turn GVN on by default.Owen Anderson2007-09-081-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41787 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename FastDSE to just DSE.Owen Anderson2007-08-011-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40668 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39986 91177308-0d34-0410-b5e6-96231b3b80d8
* if internalize is disabled, don't run the pass at all!Chris Lattner2007-06-061-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37477 91177308-0d34-0410-b5e6-96231b3b80d8
* run a late dce pass to clean up extra cruft.Chris Lattner2007-04-051-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35684 91177308-0d34-0410-b5e6-96231b3b80d8
* Now LICM is a LoopPass.Devang Patel2007-03-071-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35001 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34058 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33918 91177308-0d34-0410-b5e6-96231b3b80d8
* target constructors are never usedChris Lattner2006-12-011-4/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32099 91177308-0d34-0410-b5e6-96231b3b80d8
* Need <iostream> for the time being.Bill Wendling2006-11-171-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31821 91177308-0d34-0410-b5e6-96231b3b80d8
* eliminate only use of FilteredPassNameParserChris Lattner2006-08-271-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29916 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29783 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29782 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29781 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't pass target name into TargetData anymore, it is never used or needed.Chris Lattner2006-06-161-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28831 91177308-0d34-0410-b5e6-96231b3b80d8
* Shorten a value description so --help out isn't so wide.Reid Spencer2006-06-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28721 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a -pedantic warningChris Lattner2006-06-021-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28670 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR637Chris Lattner2005-10-181-6/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23784 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove trailing whitespaceMisha Brukman2005-04-221-14/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21428 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert the last patch. We really do need SimplyCFG.Reid Spencer2004-12-111-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18787 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove this pass as its no longer needed.Reid Spencer2004-12-101-3/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18783 91177308-0d34-0410-b5e6-96231b3b80d8
* Adjust to change in pass nameChris Lattner2004-12-021-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18442 91177308-0d34-0410-b5e6-96231b3b80d8
* First cut at implementing generic link-time OptimizationReid Spencer2004-11-201-0/+194
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18047 91177308-0d34-0410-b5e6-96231b3b80d8