aboutsummaryrefslogtreecommitdiff
path: root/include/llvm/Analysis/DataStructure
AgeCommit message (Collapse)Author
2002-07-25*** empty log message ***Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3077 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-24GCC 3.1 changesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3070 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-24Remove assert hack now that I'm using the right GDB. :)Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3045 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-23Allow comparison against nullChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3009 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-18Rename removeDeadNodes to removeTriviallyDeadNodesChris Lattner
Add new removeDeadNodes method git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2968 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-18Simplify saveOrigFunctionCallsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2967 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-18Add support for a top-down propagation pass.Vikram S. Adve
Each DSGraph now keeps a list of pending callers that have not been inlined into the function represented by that graph. It also keeps a copy of the original call nodes before the BU pass eliminates some of them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2965 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-18First cut at implementing bottom up analysisChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2944 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-11* Nodes now keep track of any global variables contained within themChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2877 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-10New implementation of data structure analysisChris Lattner
This diff is completely meaningless because this is a replacement implementation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2872 91177308-0d34-0410-b5e6-96231b3b80d8
2002-06-25changes to make it compatible with 64bit gccAnand Shukla
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2786 91177308-0d34-0410-b5e6-96231b3b80d8
2002-06-25MEGAPATCH checkin.Chris Lattner
For details, See: docs/2002-06-25-MegaPatchInfo.txt git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2779 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-29Add new optional getPassName() virtual function that a Pass can overrideChris Lattner
to make debugging output a lot nicer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2395 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-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-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