aboutsummaryrefslogtreecommitdiff
path: root/include/llvm/Analysis
AgeCommit message (Collapse)Author
2002-04-28Change the Dominator info and LoopInfo classes to keep track of ↵Chris Lattner
BasicBlock's, not const BasicBlocks git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2337 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-27s/Method/FunctionChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2336 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-27* Rename MethodPass class to FunctionPassChris Lattner
- 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 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2333 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-27Support array allocationsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2326 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-17Make data structure acurately get ALL edges, even loads of null fields ofChris Lattner
nodes that are not shadow nodes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2273 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-16Remove the concept of a critical shadow nodeChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2265 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-16* Eliminate ArgDSNode's completely, rely now on Scalar mapChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2256 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-14s/Method/FunctionChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2246 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-09Move FunctionArgument out of iOther.h into Argument.h and rename class toChris Lattner
be 'Argument' instead of FunctionArgument. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2217 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-09Use opaque decl instead of #includeChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2203 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-09Don't leak all of the Loop objects created...Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2196 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-08Trim #includesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2169 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-07* Move include/llvm/Analysis/SlotCalculator.h to include/llvm/SlotCalculator.hChris Lattner
because the slot calculator is already part of the VMCore library. * Rename incorporateMethod and purgeMethod to *Function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2154 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-07Change references to the Method class to be references to the FunctionChris Lattner
class. The Method class is obsolete (renamed) and all references to it are being converted over to Function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2144 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-04Add method to get # nodes in the graphChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2098 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-01Shadow nodes don't need to know their explicit parent, they just need toChris Lattner
know what type to be. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2080 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-31* Allow access to DSNode iterator as DSNode::iterator/begin/endChris Lattner
* Add debugging "dump" method to DSNode * Fix bugs in DSNode iterator git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2060 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-30Initial checkin of file:Chris Lattner
Define an iterator to operate over data structure outgoing links and graph implementation so generic graph functions can be used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2057 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-30Add accessors and a method to get all the outgoing links for ALL nodesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2055 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-30Add an accessorChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2054 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-29Add a hook to allow the datastructure to keep naturally up to date, evenChris Lattner
though it's not entirely fleshed out. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2051 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-29Expose more information to clientsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2027 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-28Implement getEscapingAllocations & getNonEscapingAllocationsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2021 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-28* Remove RemoveUnreachableShadowNodes & UnlinkUndistinguishableShadowNodesChris Lattner
to reflect the fact that they actually operate on arbitrary nodes * Clean up public interface of FunctionDSGraph * add getEscapingAllocations & getNonEscapingAllocations git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2019 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-28* Define some operators on PointerVal and PVS'sChris Lattner
* Nodes can determine whether they are foldable with another node * Rename NewDSNode to AllocDSNode * The Function graph breaks up all of the node types into individual vectors to alloc fast access when you are looking for a particular type of node. Simplifies much code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2009 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-27* Add a nice utility method to DSNodeChris Lattner
* Export interface to tell whether an alloc node represent a malloc or alloca * Add the concept of a "critical" shadow node git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2000 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-27Allow isa<DSNode>(..)Chris Lattner
Simplification routines return true on change git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1996 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-26New header file for datastructure analysisChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1993 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-26Change uses of Method to FunctionChris Lattner
Change uses of methodArgument to FunctionArgument git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1988 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-26Remove unneccesary forward declarations for classesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1987 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-23Rename Method to FunctionChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1957 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-19Big bug fix: killed uses were being inserted instead of erased!Vikram S. Adve
Also added a set of debug options. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1917 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-17Convert the top line of the header from .cpp style to .h style.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1884 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-06Clean up call graph, add comments, and fix ↵Chris Lattner
test/Regression/Other/2002-01-31-CallGraph.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1828 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-06Move callgraph printing out of writer.h into callgraph.hChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1824 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-06Pull Callgraph out of the cfg namespaceChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1821 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-06Take CallGraph out of the CFG namespace. It has nothing to do with CFGsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1820 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-26Expose verifier for method and module, and accept constant structuresChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1814 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-24Make it compile with GCC 3.0.4Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1786 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-20Modernize verifier interfaceChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1780 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-12* Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and intoChris Lattner
llvm/Support/CFG.h * Make pred & succ iterators for intervals global functions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1748 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-12Method.h no longer includes BasicBlock.hChris Lattner
Method::inst_* is now in llvm/Support/InstIterator.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1745 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-05Convert BBLiveVar to be a BasicBlock annotation, this removes the BB2BBLVMap ↵Chris Lattner
from MethodLiveVarInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1721 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-05Minor change: Methods that return ValueSet's that are guaranteed to be validChris Lattner
return references instead of pointers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1719 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-05Remove generic routines to Support/SetOperations.hChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1715 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-05Remove empty filesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1713 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-05* Eliminate the LiveVarSet class, making applyTranferFuncForMInst a staticChris Lattner
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
2002-02-05* Code CleanupsChris Lattner
* 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
2002-02-05Remove empty fileChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1708 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-05* Big cleanups.Chris Lattner
* 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