summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Scalar/Reassociate.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Handle some simple cases where we can see that values get annihilated.Chris Lattner2005-05-081-7/+42
| | | | llvm-svn: 21771
* Rewrite the guts of the reassociate pass to be more efficient and logical. ↵Chris Lattner2005-05-071-103/+185
| | | | | | | | | Instead of trying to do local reassociation tweaks at each level, only process an expression tree once (at its root). This does not improve the reassociation pass in any real way. llvm-svn: 21768
* Convert shifts to muls to assist reassociation. This implementsChris Lattner2005-05-071-2/+27
| | | | | | Reassociate/shifttest.ll llvm-svn: 21761
* Simplify the code and rearrange it. No major functionality changes here.Chris Lattner2005-05-071-62/+82
| | | | llvm-svn: 21759
* Remove trailing whitespaceMisha Brukman2005-04-211-5/+5
| | | | llvm-svn: 21427
* This mega patch converts us from using Function::a{iterator|begin|end} toChris Lattner2005-03-151-1/+1
| | | | | | | | using Function::arg_{iterator|begin|end}. Likewise Module::g* -> Module::global_*. This patch is contributed by Gabor Greif, thanks! llvm-svn: 20597
* 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
* Fix #includes of i*.h => Instructions.h as per PR403.Misha Brukman2004-07-291-1/+1
| | | | llvm-svn: 15328
* Fixes working towards PR341Chris Lattner2004-07-151-4/+4
| | | | llvm-svn: 14839
* Make this pass use a more specific debug message than "Processing:".Brian Gaeke2004-07-011-1/+1
| | | | llvm-svn: 14541
* Finegrainify namespacificationChris Lattner2004-01-091-4/+2
| | | | llvm-svn: 10725
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-111-0/+5
| | | | llvm-svn: 9903
* Declare FunctionPasses as such so that they can be used in FunctionPassManager.Misha Brukman2003-11-071-1/+1
| | | | llvm-svn: 9768
* 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
* Change the Opcode enum for PHI nodes from "Instruction::PHINode" to ↵Chris Lattner2003-10-191-1/+1
| | | | | | "Instruction::PHI" to be more consistent with the other instructions. llvm-svn: 9269
* Decrease usage of use_size()Chris Lattner2003-10-151-3/+3
| | | | llvm-svn: 9135
* Credits now go into the top-level CREDITS.TXTMisha Brukman2003-09-221-3/+0
| | | | llvm-svn: 8662
* Spell `necessary' correctly.Misha Brukman2003-08-181-1/+1
| | | | llvm-svn: 7944
* Assign arguments different ranks so they get grouped togetherChris Lattner2003-08-131-4/+10
| | | | llvm-svn: 7813
* Fix bug: Reassociate/2003-08-12-InfiniteLoop.llChris Lattner2003-08-121-5/+6
| | | | llvm-svn: 7792
* Assign finer grained ranks, make sure to reassociate top-level after ↵Chris Lattner2003-08-121-7/+11
| | | | | | reassociating bottom level llvm-svn: 7787
* DEBUG got moved to Support/Debug.hChris Lattner2003-08-011-0/+1
| | | | llvm-svn: 7492
* Fix spellingChris Lattner2003-05-021-1/+1
| | | | llvm-svn: 5983
* Remove unnecesary &*'sChris Lattner2003-04-231-1/+1
| | | | llvm-svn: 5872
* Rename Instruction::hasSideEffects() -> mayWriteToMemory()Chris Lattner2003-02-241-1/+1
| | | | llvm-svn: 5620
* Fix a huge performance problem in reassociate by introducing aChris Lattner2002-12-151-1/+7
| | | | | | rank map cache for instruction ranks llvm-svn: 5030
* Minor changes:Chris Lattner2002-12-151-19/+13
| | | | | | | | * Reword comment to make more clear * Don't print out BB's after modification made * Don't delete and new an instruction when we need to move something, just move it. llvm-svn: 5029
* Fixes to the reassociate pass to make it respect dominance propertiesChris Lattner2002-10-311-57/+54
| | | | | | | Huge thanks go to Casey Carter for writing this fix, reassociate is now reoperational! llvm-svn: 4471
* - 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-6/+5
| | | | | | | | | | | | * 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
* Simplify code (somtimes dramatically), by using the new "auto-insert" featureChris Lattner2002-09-101-10/+8
| | | | | | of instruction constructors. llvm-svn: 3656
* * 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-251-1/+1
| | | | llvm-svn: 3075
* *** empty log message ***Chris Lattner2002-07-231-4/+2
| | | | llvm-svn: 3016
* MEGAPATCH checkin.Chris Lattner2002-06-251-23/+19
| | | | | | For details, See: docs/2002-06-25-MegaPatchInfo.txt llvm-svn: 2779
* Use the new DEBUG(x) macro to allow debugging code to be enabled on the ↵Chris Lattner2002-05-221-7/+5
| | | | | | commandline llvm-svn: 2713
* * Make debug output conditional on #defineChris Lattner2002-05-161-13/+99
| | | | | | | | | * Add optimization to rank computation to not recursively search when unneccesary. * More agressively negate expressions to open reassociation opportunities. * Linearize (A+B)+(C+D) into ((A+B)+C)+D llvm-svn: 2637
* Add support for printing out statistics information when -stats is added toChris Lattner2002-05-101-0/+6
| | | | | | the command line llvm-svn: 2601
* Give the longer name to the instruction that will probably be eliminated laterChris Lattner2002-05-091-1/+2
| | | | llvm-svn: 2581
* Initial checkin of expression reassociation passChris Lattner2002-05-081-0/+198
llvm-svn: 2559
OpenPOWER on IntegriCloud