summaryrefslogtreecommitdiff
path: root/lib/Analysis
Commit message (Collapse)AuthorAge
* Take CallGraph out of the CFG namespace. It has nothing to do with CFGsChris Lattner2002-03-06
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1820 91177308-0d34-0410-b5e6-96231b3b80d8
* Make it compile with GCC 3.0.4Chris Lattner2002-02-24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1786 91177308-0d34-0410-b5e6-96231b3b80d8
* * Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and intoChris Lattner2002-02-12
| | | | | | | | | | llvm/Support/CFG.h * Make pred & succ iterators for intervals global functions * Add #includes that are now neccesary because BasicBlock.h doesn't include InstrTypes.h anymore git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1750 91177308-0d34-0410-b5e6-96231b3b80d8
* Method.h no longer includes BasicBlock.hChris Lattner2002-02-12
| | | | | | | | Method::inst_* is now in llvm/Support/InstIterator.h GraphTraits specializations for BasicBlock and Methods are now in llvm/Support/CFG.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1746 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert BBLiveVar to be a BasicBlock annotation, this removes the BB2BBLVMap ↵Chris Lattner2002-02-05
| | | | | | from MethodLiveVarInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1721 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert operand iterator over to work like an STL iteratorChris Lattner2002-02-05
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1720 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor change: Methods that return ValueSet's that are guaranteed to be validChris Lattner2002-02-05
| | | | | | | return references instead of pointers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1719 91177308-0d34-0410-b5e6-96231b3b80d8
* Must include SetOperations to do set_*Chris Lattner2002-02-05
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1716 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove generic routines to Support/SetOperations.hChris Lattner2002-02-05
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1715 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove empty filesChris Lattner2002-02-05
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1713 91177308-0d34-0410-b5e6-96231b3b80d8
* * Eliminate the LiveVarSet class, making applyTranferFuncForMInst a staticChris Lattner2002-02-05
| | | | | | | | | | function in the one .cpp file that uses it. Use ValueSet's instead. * Prepare to delete LiveVarSet.h & LiveVarSet.cpp * Eliminate the ValueSet class, making all old member functions into global templates that will eventually be moved to Support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1711 91177308-0d34-0410-b5e6-96231b3b80d8
* * Code CleanupsChris Lattner2002-02-05
| | | | | | | * Introduce RAV to allow stream I/O instead of using printValue git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1710 91177308-0d34-0410-b5e6-96231b3b80d8
* Changes neccesary due to the move of BBLiveVar.h to the lib/Analysis/LiveVar ↵Chris Lattner2002-02-05
| | | | | | directory git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1709 91177308-0d34-0410-b5e6-96231b3b80d8
* * Give BBLiveVar.cpp a proper file headerChris Lattner2002-02-05
| | | | | | | | | | * applyFlowFunc DOES NOT NEED TO COPY the huge BB->BBLiveVar Map every time it is invoked! * Big cleanups. * Make BBLiveVar.h effectively an internal header file * Prepare LiveVarMap.h for deletion git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1706 91177308-0d34-0410-b5e6-96231b3b80d8
* * Big cleanups.Chris Lattner2002-02-05
| | | | | | | | * Make BBLiveVar.h effectively an internal header file * Prepare LiveVarMap.h for deletion git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1705 91177308-0d34-0410-b5e6-96231b3b80d8
* Code cleanups, no functional changeChris Lattner2002-02-04
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1704 91177308-0d34-0410-b5e6-96231b3b80d8
* Clean up MethodLiveVarInfoChris Lattner2002-02-04
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1703 91177308-0d34-0410-b5e6-96231b3b80d8
* Turn live variable analysis into a real MethodPass.Chris Lattner2002-02-04
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1699 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove Obsolete LoopDepthCalculator. All users should use LoopInfo directly.Chris Lattner2002-02-04
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1697 91177308-0d34-0410-b5e6-96231b3b80d8
* REmove huge hack used by register allocatorChris Lattner2002-02-04
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1694 91177308-0d34-0410-b5e6-96231b3b80d8
* * Add #includes that were yanked out of header filesChris Lattner2002-02-04
| | | | | | | | * Convert over to valueset interface that uses insert & erase insead of add and remove * the -> operator really isn't that hard to use! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1687 91177308-0d34-0410-b5e6-96231b3b80d8
* Cut down include pollution and number of frivolous consts.Chris Lattner2002-02-04
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1683 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate ModuleAnalyzer. It's old code that is not going to be used in the ↵Chris Lattner2002-02-04
| | | | | | near future git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1679 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor cleanupsChris Lattner2002-02-04
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1671 91177308-0d34-0410-b5e6-96231b3b80d8
* Lots of nonfunctional code cleanupsChris Lattner2002-02-03
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1642 91177308-0d34-0410-b5e6-96231b3b80d8
* Provide the right AnalysisID for postdominatorsChris Lattner2002-01-31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1616 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert analyses to new pass structureChris Lattner2002-01-31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1603 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement loop depth calculation in terms of dominators instead of intervalsChris Lattner2002-01-31
| | | | | | | No problems with irreducibility now git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1602 91177308-0d34-0410-b5e6-96231b3b80d8
* Move stuff out of the Optimizations directories into the appropriate TransformsChris Lattner2002-01-21
| | | | | | | directories. Eliminate the opt namespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1520 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement a more powerful, simpler, pass system. This pass system can figureChris Lattner2002-01-21
| | | | | | | | | | out how to run a collection of passes optimially given their behaviors and charactaristics. Convert code to use it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1507 91177308-0d34-0410-b5e6-96231b3b80d8
* Changes to build successfully with GCC 3.02Chris Lattner2002-01-20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1503 91177308-0d34-0410-b5e6-96231b3b80d8
* added a section on how to modify live variable code to use LLVM instructionsRuchira Sasanka2001-12-13
| | | | | | | instead of machine instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1451 91177308-0d34-0410-b5e6-96231b3b80d8
* Some programs are using BB's as values, until we resolve this. Disable the ↵Chris Lattner2001-12-13
| | | | | | assert git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1448 91177308-0d34-0410-b5e6-96231b3b80d8
* Added more comments. Added code to destructor in MethodLiveVarInfo to deleteRuchira Sasanka2001-12-08
| | | | | | | LiveVarSet caches. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1435 91177308-0d34-0410-b5e6-96231b3b80d8
* Added comments are more documentation infoRuchira Sasanka2001-12-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1434 91177308-0d34-0410-b5e6-96231b3b80d8
* "fix" problems processing floating point expressionsChris Lattner2001-12-05
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1421 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a bug that clobbered the step value on some inputsChris Lattner2001-12-05
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1416 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a pessimization due to sucky LI testingChris Lattner2001-12-04
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1412 91177308-0d34-0410-b5e6-96231b3b80d8
* Renamed inst_const_iterator -> const_inst_iteratorChris Lattner2001-12-04
| | | | | | | | Renamed op_const_iterator -> const_op_iterator Renamed PointerType::getValueType() -> PointerType::getElementType() git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1408 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename ConstPoolVal -> ConstantChris Lattner2001-12-03
| | | | | | | | Rename ConstPool* -> Constant* Rename ConstPoolVals.h -> ConstantVals.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1407 91177308-0d34-0410-b5e6-96231b3b80d8
* Split the PHINode class out from the iOther.h file into the iPHINode.h fileChris Lattner2001-12-03
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1405 91177308-0d34-0410-b5e6-96231b3b80d8
* Induction variables must be phi nodesChris Lattner2001-12-03
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1402 91177308-0d34-0410-b5e6-96231b3b80d8
* Create a new #include "Support/..." directory structure to move thingsChris Lattner2001-11-27
| | | | | | | | | from "llvm/Support/..." that are not llvm dependant. Move files and fix #includes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1400 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement writer support for Loops, Induction Variables, and CallGraphsChris Lattner2001-11-26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1372 91177308-0d34-0410-b5e6-96231b3b80d8
* Make Mul work rightChris Lattner2001-11-26
| | | | | | | Make sub work right git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1371 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a bad assertion to be correct . The root basic block can be used by PHI ↵Chris Lattner2001-11-26
| | | | | | nodes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1370 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement a new entry node that has edges to all external methods in the moduleChris Lattner2001-11-26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1369 91177308-0d34-0410-b5e6-96231b3b80d8
* * Implement dominator based loop identificationChris Lattner2001-11-26
| | | | | | | * Implement cleaner induction variable identification git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1359 91177308-0d34-0410-b5e6-96231b3b80d8
* * Implement more powerful expr analysis of cast instructionsChris Lattner2001-11-26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1335 91177308-0d34-0410-b5e6-96231b3b80d8
* New pass to find types in use by a programChris Lattner2001-11-09
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1232 91177308-0d34-0410-b5e6-96231b3b80d8