aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/Analysis
Commit message (Collapse)AuthorAgeFilesLines
* Changes to be GCC 3.1 friendlyChris Lattner2002-07-313-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3184 91177308-0d34-0410-b5e6-96231b3b80d8
* Add GlobalDSGraph -- a common graph that holds externally visible nodes.Vikram S. Adve2002-07-302-68/+180
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3169 91177308-0d34-0410-b5e6-96231b3b80d8
* * Eliminate the Provided set. All Passes now finally just automaticallyChris Lattner2002-07-297-17/+0
| | | | | | | provide themselves. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3125 91177308-0d34-0410-b5e6-96231b3b80d8
* * Eliminate the Provided set. All Passes now finally just automaticallyChris Lattner2002-07-291-1/+0
| | | | | | | provide themselves. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3124 91177308-0d34-0410-b5e6-96231b3b80d8
* * Standardize how analysis results/passes as printed with the print() virtualChris Lattner2002-07-2710-86/+33
| | | | | | | | | | | methods * Eliminate AnalysisID: Now it is just a typedef for const PassInfo* * Simplify how AnalysisID's are initialized * Eliminate Analysis/Writer.cpp/.h: incorporate printing functionality into the analyses themselves. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3115 91177308-0d34-0410-b5e6-96231b3b80d8
* *** empty log message ***Chris Lattner2002-07-269-66/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3111 91177308-0d34-0410-b5e6-96231b3b80d8
* *** empty log message ***Chris Lattner2002-07-269-33/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3107 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplify analyses so that there is only one analysis per classChris Lattner2002-07-263-138/+251
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3104 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove dead optionsChris Lattner2002-07-251-9/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3096 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix previous checkinChris Lattner2002-07-251-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3093 91177308-0d34-0410-b5e6-96231b3b80d8
* Add typenamesChris Lattner2002-07-251-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3092 91177308-0d34-0410-b5e6-96231b3b80d8
* *** empty log message ***Chris Lattner2002-07-253-6/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3077 91177308-0d34-0410-b5e6-96231b3b80d8
* GCC 3.1 changesChris Lattner2002-07-242-2/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3070 91177308-0d34-0410-b5e6-96231b3b80d8
* *** empty log message ***Chris Lattner2002-07-241-3/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3065 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove assert hack now that I'm using the right GDB. :)Chris Lattner2002-07-242-14/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3045 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow comparison against nullChris Lattner2002-07-232-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3009 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename removeDeadNodes to removeTriviallyDeadNodesChris Lattner2002-07-182-6/+24
| | | | | | | Add new removeDeadNodes method git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2968 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplify saveOrigFunctionCallsChris Lattner2002-07-182-20/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2967 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for a top-down propagation pass.Vikram S. Adve2002-07-182-6/+184
| | | | | | | | | | 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
* * s/method/functionChris Lattner2002-07-181-61/+73
| | | | | | | | | * BIG CHANGE: The root of the call "graph" is considered to be the external node, not the "Root". This means that users using graph iterators like df_begin() will start from the external node. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2957 91177308-0d34-0410-b5e6-96231b3b80d8
* First cut at implementing bottom up analysisChris Lattner2002-07-182-64/+234
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2944 91177308-0d34-0410-b5e6-96231b3b80d8
* * Nodes now keep track of any global variables contained within themChris Lattner2002-07-112-8/+30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2877 91177308-0d34-0410-b5e6-96231b3b80d8
* New implementation of data structure analysisChris Lattner2002-07-105-790/+294
| | | | | | | | 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
* changes to make it compatible with 64bit gccAnand Shukla2002-06-252-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2786 91177308-0d34-0410-b5e6-96231b3b80d8
* MEGAPATCH checkin.Chris Lattner2002-06-2511-29/+25
| | | | | | | 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
* *** empty log message ***Chris Lattner2002-06-252-3/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2777 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow const bb's to be checked for containment in a loopChris Lattner2002-06-031-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2754 91177308-0d34-0410-b5e6-96231b3b80d8
* Avoid #including CommandLine.hChris Lattner2002-05-221-12/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2710 91177308-0d34-0410-b5e6-96231b3b80d8
* Add method to check to see if two _Instructions_ dominate each otherChris Lattner2002-05-131-0/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2616 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix misspellingChris Lattner2002-05-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2548 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove analysis namespaceChris Lattner2002-04-291-6/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2399 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new optional getPassName() virtual function that a Pass can overrideChris Lattner2002-04-299-0/+35
| | | | | | | to make debugging output a lot nicer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2395 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove all contents of the cfg namespace to the global namespaceChris Lattner2002-04-287-82/+58
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2369 91177308-0d34-0410-b5e6-96231b3b80d8
* Change the Dominator info and LoopInfo classes to keep track of ↵Chris Lattner2002-04-282-41/+37
| | | | | | | | | BasicBlock's, not const BasicBlocks git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2337 91177308-0d34-0410-b5e6-96231b3b80d8
* s/Method/FunctionChris Lattner2002-04-271-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2336 91177308-0d34-0410-b5e6-96231b3b80d8
* * Rename MethodPass class to FunctionPassChris Lattner2002-04-279-104/+95
| | | | | | | | | | | | | | | | - 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
* Support array allocationsChris Lattner2002-04-272-4/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2326 91177308-0d34-0410-b5e6-96231b3b80d8
* Make data structure acurately get ALL edges, even loads of null fields ofChris Lattner2002-04-172-20/+24
| | | | | | | nodes that are not shadow nodes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2273 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove the concept of a critical shadow nodeChris Lattner2002-04-162-28/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2265 91177308-0d34-0410-b5e6-96231b3b80d8
* * Eliminate ArgDSNode's completely, rely now on Scalar mapChris Lattner2002-04-162-46/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2256 91177308-0d34-0410-b5e6-96231b3b80d8
* s/Method/FunctionChris Lattner2002-04-141-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2246 91177308-0d34-0410-b5e6-96231b3b80d8
* Move FunctionArgument out of iOther.h into Argument.h and rename class toChris Lattner2002-04-093-7/+7
| | | | | | | be 'Argument' instead of FunctionArgument. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2217 91177308-0d34-0410-b5e6-96231b3b80d8
* Use opaque decl instead of #includeChris Lattner2002-04-091-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2203 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't leak all of the Loop objects created...Chris Lattner2002-04-091-1/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2196 91177308-0d34-0410-b5e6-96231b3b80d8
* Trim #includesChris Lattner2002-04-081-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2169 91177308-0d34-0410-b5e6-96231b3b80d8
* * Move include/llvm/Analysis/SlotCalculator.h to include/llvm/SlotCalculator.hChris Lattner2002-04-071-12/+16
| | | | | | | | 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
* Change references to the Method class to be references to the FunctionChris Lattner2002-04-071-10/+10
| | | | | | | | 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
* Add method to get # nodes in the graphChris Lattner2002-04-042-0/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2098 91177308-0d34-0410-b5e6-96231b3b80d8
* Shadow nodes don't need to know their explicit parent, they just need toChris Lattner2002-04-012-6/+4
| | | | | | | know what type to be. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2080 91177308-0d34-0410-b5e6-96231b3b80d8
* * Allow access to DSNode iterator as DSNode::iterator/begin/endChris Lattner2002-03-315-33/+66
| | | | | | | | * 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