summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* * Document instance vars betterChris Lattner2003-10-051-20/+26
| | | | | | | * Fuse two parallel loops * Use a more specific type for AllocaLookup llvm-svn: 8859
* Two small cleanups/speedups:Chris Lattner2003-10-051-29/+31
| | | | | | | * Do not insert a new entry into NewPhiNodes during the rename pass if there are no PHIs in a block. * Do not compute WriteSets in parallel llvm-svn: 8858
* * Minor cleanupsChris Lattner2003-10-051-42/+28
| | | | | | | | * Eliminate the KillList instance variable, instead, just delete loads and stores as they are "renamed", and delete allocas when they are done * Make the 'visited' set an instance variable to avoid passing it on the stack. llvm-svn: 8857
* Spell `necessary' correctly.Misha Brukman2003-08-181-1/+1
| | | | llvm-svn: 7944
* Fix bug: mem2reg/2003-04-24-MultipleIdenticalSuccessors.llChris Lattner2003-04-251-7/+8
| | | | llvm-svn: 5919
* Fix iterator invalidation problemChris Lattner2003-04-241-2/+7
| | | | llvm-svn: 5895
* Fix bug where use still existed in dead codeChris Lattner2003-04-211-0/+2
| | | | llvm-svn: 5824
* Fix bug: Mem2reg/2003-04-18-DeadBlockProblem.llChris Lattner2003-04-181-4/+17
| | | | llvm-svn: 5810
* * Fix bug: Mem2Reg/2003-04-10-DFNotFound.llChris Lattner2003-04-101-9/+26
| | | | | | | * Make Mem2Reg assign version numbers now for renamed variables instead of .mem2reg suffixes. This produces what people think of as SSA. llvm-svn: 5771
* Change the mem2reg interface to accept a TargetData argumentChris Lattner2003-03-031-6/+11
| | | | llvm-svn: 5685
* Split mem2reg promotion into two parts: a function which does the work, andChris Lattner2003-02-221-85/+53
| | | | | | a pass which wraps the function. This allows other passes to use the functionality llvm-svn: 5610
* Clean up std namespace referencesChris Lattner2003-02-221-32/+29
| | | | llvm-svn: 5608
* - 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-4/+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: Mem2Reg/2002-05-01-ShouldNotPromoteThisAlloca.llChris Lattner2002-09-241-2/+7
| | | | llvm-svn: 3917
* Clean up code due to auto-insert constructorsChris Lattner2002-09-101-6/+4
| | | | llvm-svn: 3665
* Eliminated the MemAccessInst class, folding contents into GEP class.Chris Lattner2002-08-221-17/+3
| | | | llvm-svn: 3487
* - 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/+1
| | | | llvm-svn: 3016
* MEGAPATCH checkin.Chris Lattner2002-06-251-11/+10
| | | | | | For details, See: docs/2002-06-25-MegaPatchInfo.txt llvm-svn: 2779
* Add support for printing out statistics information when -stats is added toChris Lattner2002-05-101-0/+5
| | | | | | the command line llvm-svn: 2601
* Merge all individual .h files into a single Scalar.h fileChris Lattner2002-05-071-1/+1
| | | | llvm-svn: 2537
* Fixed bug: ↵Chris Lattner2002-05-011-0/+3
| | | | | | test/Regression/Transforms/Mem2Reg/2002-05-01-ShouldNotPromoteThisAlloca.ll llvm-svn: 2423
* changes because iMemory.h no longer #includes DerivedTypes.hChris Lattner2002-04-291-2/+3
| | | | | | This only requires Type.h anyway llvm-svn: 2405
* Eliminate duplicate or unneccesary #include'sChris Lattner2002-04-291-1/+0
| | | | llvm-svn: 2397
* Add new optional getPassName() virtual function that a Pass can overrideChris Lattner2002-04-291-0/+2
| | | | | | to make debugging output a lot nicer. llvm-svn: 2395
* Tighten up the AnalysisUsage of lots of passes, primarily to correctly ↵Chris Lattner2002-04-281-0/+1
| | | | | | indicate whether or not they invalidate the CFGA llvm-svn: 2386
* Split ConstantVals.h into Constant.h and Constants.hChris Lattner2002-04-281-2/+2
| | | | llvm-svn: 2378
* Eliminate the PromoteInstance class, incorporating it into the PromotePassChris Lattner2002-04-281-63/+57
| | | | | | class. llvm-svn: 2375
* Eliminate visited, CurrentValue, and WriteSets as instance variables ofChris Lattner2002-04-281-53/+54
| | | | | | | | PromoteInstance. Make them local variables that are passed around as appropriate. Especially in the case of CurrentValue, this makes the code simpler. llvm-svn: 2374
* * Fix bug: test/Regression/Transforms/Mem2Reg/2002-03-28-UninitializedVal.llChris Lattner2002-04-281-4/+12
| | | | | | * Minor cleanup that was missed in last patch llvm-svn: 2373
* This huge changeset is a strictly cleanup changeChris Lattner2002-04-281-228/+174
| | | | | | Bugfixes will come in the next revision so that the diff is obvious. llvm-svn: 2372
* Eliminate the cfg namespace, moving LoopInfo, Dominators, Interval* classesChris Lattner2002-04-281-3/+0
| | | | | | to the global namespace llvm-svn: 2370
* Change the Dominator info and LoopInfo classes to keep track of ↵Chris Lattner2002-04-281-4/+4
| | | | | | | | BasicBlock's, not const BasicBlocks llvm-svn: 2337
* * Rename MethodPass class to FunctionPassChris Lattner2002-04-271-8/+6
| | | | | | | | | | | | | | | - Rename runOnMethod to runOnFunction * Transform getAnalysisUsageInfo into getAnalysisUsage - Method is now const - It now takes one AnalysisUsage object to fill in instead of 3 vectors to fill in - Pass's now specify which other passes they _preserve_ not which ones they modify (be conservative!) - A pass can specify that it preserves all analyses (because it never modifies the underlying program) * s/Method/Function/g in other random places as well llvm-svn: 2333
* Add #includes to make up for #includes pruned out of header files.Chris Lattner2002-04-091-2/+3
| | | | llvm-svn: 2207
* s/Method/FunctionChris Lattner2002-04-081-1/+0
| | | | | | Remove extraneous #includes of llvm/Assembly/Writer llvm-svn: 2178
* Change references to the Method class to be references to the FunctionChris Lattner2002-04-071-19/+16
| | | | | | | class. The Method class is obsolete (renamed) and all references to it are being converted over to Function. llvm-svn: 2144
* * Move classes aroundCameron Buschardt2002-03-271-29/+36
| | | | | | | * rename constructor function * Move stuff into anonymous namespaces llvm-svn: 2007
* Implemented promote mem->reg pass.Cameron Buschardt2002-03-271-64/+286
| | | | llvm-svn: 2005
* NamespacesChris Lattner2002-02-241-1/+1
| | | | llvm-svn: 1791
* Add neccesary #includeChris Lattner2002-02-121-0/+1
| | | | llvm-svn: 1742
* I forgot to provide dominance frontier information. Now it's available.Chris Lattner2002-02-121-5/+24
| | | | | | Also add more comments. llvm-svn: 1741
* Initial checkin of new memory -> register promotion passChris Lattner2002-02-121-0/+93
llvm-svn: 1739
OpenPOWER on IntegriCloud