summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Scalar/LICM.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Added LLVM project notice to the top of every C++ source file.John Criswell2003-10-201-0/+7
| | | | | | Header files will be on the way. llvm-svn: 9298
* Wrap code at 80 columnsChris Lattner2003-10-131-6/+10
| | | | llvm-svn: 9073
* Rename loop preheaders pass to loop simplifyChris Lattner2003-10-121-1/+1
| | | | llvm-svn: 9061
* Fix spelling.Misha Brukman2003-10-101-2/+2
| | | | llvm-svn: 9027
* Change the interface to PromoteMemToReg to also take a DominatorTreeChris Lattner2003-10-051-2/+3
| | | | llvm-svn: 8883
* Renamed DominatorTree::Node::getNode() -> getBlock()Chris Lattner2003-09-111-4/+4
| | | | llvm-svn: 8469
* Spell `definite' correctly.Misha Brukman2003-09-111-2/+2
| | | | llvm-svn: 8467
* Fix spell-o'sChris Lattner2003-09-101-1/+1
| | | | llvm-svn: 8431
* Do not hoist volatile loadsChris Lattner2003-09-081-1/+1
| | | | llvm-svn: 8399
* Fixed minor bug in SafeToHoist and made some changes suggested by Chris.Tanya Lattner2003-08-051-19/+10
| | | | llvm-svn: 7614
* Fixed LICM bug that hoists trapping instructions that are not guaranteed to ↵Tanya Lattner2003-08-051-5/+59
| | | | | | execute. llvm-svn: 7612
* DEBUG got moved to Support/Debug.hChris Lattner2003-08-011-1/+2
| | | | llvm-svn: 7492
* Remove unnecesary &*'sChris Lattner2003-04-231-2/+2
| | | | llvm-svn: 5872
* Convert LICM over to use AliasSetTracker. Besides being nicer, this ↵Chris Lattner2003-03-031-164/+45
| | | | | | | | automatically allows LICM to use access sizes to help alias analysis be more precise. llvm-svn: 5693
* Change the mem2reg interface to accept a TargetData argumentChris Lattner2003-03-031-1/+3
| | | | llvm-svn: 5685
* Fix bug: LICM/2003-02-28-PromoteDifferentType.llChris Lattner2003-02-281-2/+8
| | | | llvm-svn: 5675
* Fix bug: 2003-02-27-StoreSinkPHIs.llChris Lattner2003-02-271-1/+4
| | | | llvm-svn: 5658
* Convert to work with new AliasAnalysis interface by conservatively assuming ↵Chris Lattner2003-02-261-6/+6
| | | | | | all pointers are arbitrarily large accesses llvm-svn: 5636
* Initial implementation of Loop invariant memory->scalar promotionChris Lattner2003-02-241-33/+328
| | | | llvm-svn: 5613
* - Rename AnalysisUsage::preservesAll to getPreservesAll & preservesCFG toChris Lattner2002-10-211-1/+1
| | | | | | setPreservesCFG to be less confusing. llvm-svn: 4255
* Updates to work with recent Statistic's changes:Chris Lattner2002-10-011-3/+3
| | | | | | | | | | | | * Renamed StatisticReporter.h/cpp to Statistic.h/cpp * Broke constructor to take two const char * arguments instead of one, so that indendation can be taken care of automatically. * Sort the list by pass name when printing * Make sure to print all statistics as a group, instead of randomly when the statistics dtors are called. * Updated ProgrammersManual with new semantics. llvm-svn: 4002
* Fix bug in LICM that caused the previous big win. :(Chris Lattner2002-09-291-13/+16
| | | | llvm-svn: 3980
* Hoist the contents of Loops in depth first order in the dominator tree,Chris Lattner2002-09-291-6/+36
| | | | | | | | | rather than in random order. This causes LICM to be DRAMATICALLY more effective. For example, on bzip2.c, it is able to hoist 302 loads and 2380 total instructions, as opposed to 44/338 before. This obviously makes other transformations much more powerful as well! llvm-svn: 3978
* - Further cleanups of LICM pass, remove extra work from previous implementationChris Lattner2002-09-261-59/+25
| | | | | | - Do not clone instructions then insert clone outside of loop. Just move them. llvm-svn: 3951
* Improve comments, doxygenize moreChris Lattner2002-09-261-20/+36
| | | | llvm-svn: 3950
* Clean up LICM significantly now that it is guaranteed to have loop preheadersChris Lattner2002-09-261-99/+14
| | | | llvm-svn: 3947
* Loop invariant code motion now depends on the LoopPreheader pass. Dead codeChris Lattner2002-09-261-5/+10
| | | | | | has not yet been removed. llvm-svn: 3945
* Clean up code due to auto-insert constructorsChris Lattner2002-09-101-4/+2
| | | | llvm-svn: 3665
* Load & StoreInst no longer derive from MemAccessInst, so we don't haveChris Lattner2002-08-221-1/+0
| | | | | | to handle indexing anymore llvm-svn: 3485
* Add capability of using pointer analysis to LICMChris Lattner2002-08-221-2/+35
| | | | llvm-svn: 3478
* Fix bug introduced in last checkin due to CastInst not being visibleChris Lattner2002-08-141-2/+3
| | | | llvm-svn: 3327
* Remove support for NOT instructionChris Lattner2002-08-141-5/+3
| | | | llvm-svn: 3323
* - Cleaned up the interface to AnalysisUsage to take analysis class namesChris Lattner2002-08-081-1/+1
| | | | | | | instead of ::ID's. - Pass::getAnalysis<> now no longer takes an optional argument llvm-svn: 3265
* * Add support for different "PassType's"Chris Lattner2002-07-261-1/+1
| | | | | | | | | | | | | | | * Add new RegisterOpt/RegisterAnalysis templates for registering passes that are to show up in opt or analyze * Register Analyses now * Change optimizations to use RegisterOpt instead of RegisterPass * Add support for different "PassType's" * Add new RegisterOpt/RegisterAnalysis templates for registering passes that are to show up in opt or analyze * Register Analyses now * Change optimizations to use RegisterOpt instead of RegisterPass * Remove getPassName implementations from various subclasses llvm-svn: 3113
* *** empty log message ***Chris Lattner2002-07-231-2/+2
| | | | llvm-svn: 3016
* changes to make it compatible with 64bit gccAnand Shukla2002-06-251-0/+1
| | | | llvm-svn: 2792
* MEGAPATCH checkin.Chris Lattner2002-06-251-33/+29
| | | | | | For details, See: docs/2002-06-25-MegaPatchInfo.txt llvm-svn: 2779
* Simplify the interface to local DCE and Constant propChris Lattner2002-05-261-1/+1
| | | | llvm-svn: 2749
* Initial checkin of LICM passChris Lattner2002-05-101-0/+262
llvm-svn: 2615
OpenPOWER on IntegriCloud