summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/DataStructure/DataStructure.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove obsolete codeChris Lattner2002-10-171-9/+0
| | | | llvm-svn: 4218
* Prune function nodes that are no longer referenced due to inliningChris Lattner2002-10-031-2/+2
| | | | llvm-svn: 4036
* Handle bug exposed by power benchmarkChris Lattner2002-10-031-1/+1
| | | | llvm-svn: 4033
* * Significant rework of DSNode to support arbitrary aliasing due to mergingChris Lattner2002-10-021-20/+146
| | | | | | | | * Now all and any bytes of a DSNode can be merged together individually. This is neccesary to support the full generality of C and support aliasing correctly. llvm-svn: 4008
* Checkin some major reworks of data structure analysis. This is not done,Chris Lattner2002-10-011-165/+261
| | | | | | | nor does it work very well, but I need to get it checked in before I break the tree unintentionally. llvm-svn: 3996
* Reorder #includes to be rightChris Lattner2002-08-071-1/+1
| | | | llvm-svn: 3260
* Changes to be GCC3.1 friendlyChris Lattner2002-07-311-6/+6
| | | | llvm-svn: 3186
* Use a separate globals graph to hold externally visible nodes.Vikram S. Adve2002-07-301-64/+406
| | | | | | | | | This changes both the bottom-up and top-down propagation so that globals and other external objects do not have to appear in every function, but only in functions in which they are referenced or they can be used to access something else that is referenced. llvm-svn: 3170
* * Standardize how analysis results/passes as printed with the print() virtualChris Lattner2002-07-271-4/+0
| | | | | | | | | | 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. llvm-svn: 3115
* * Add support for different "PassType's"Chris Lattner2002-07-261-0/+2
| | | | | | | | | | | | | | | * 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: 3112
* * Inline CopyFunctionCallsListChris Lattner2002-07-181-35/+88
| | | | | | | | * Don't clone OrigCallList * Rename removeDeadNodes -> removeTriviallyDeadNodes * Implement new removeDeadNodes method llvm-svn: 2970
* Add support for a top-down propagation pass.Vikram S. Adve2002-07-181-17/+39
| | | | | | | | | 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. llvm-svn: 2965
* Implement cast nodes correctly.Chris Lattner2002-07-181-2/+2
| | | | llvm-svn: 2964
* Lots of bug fixes, add BottomUpClosure, which has bugs, but is a start.Chris Lattner2002-07-181-12/+216
| | | | llvm-svn: 2945
* * Nodes now keep track of any global variables in themChris Lattner2002-07-111-0/+15
| | | | llvm-svn: 2879
* New implementation of data structure analysis. Only local analysis has beenChris Lattner2002-07-101-130/+92
| | | | | | implemented so far. llvm-svn: 2871
* Fix anand's last checkinChris Lattner2002-06-301-1/+0
| | | | llvm-svn: 2804
* changes to make it compatible with 64bit gccAnand Shukla2002-06-251-6/+8
| | | | llvm-svn: 2789
* *** empty log message ***Chris Lattner2002-06-251-10/+9
| | | | llvm-svn: 2777
* * Remove the concept of a critical shadow nodeChris Lattner2002-04-161-4/+7
| | | | | | | | * Make the function pointer argument explicit for a call nodes * Eliminate unreachable global values * Merge call nodes that are identical llvm-svn: 2266
* Add hack to get timing of analysisChris Lattner2002-04-041-0/+23
| | | | llvm-svn: 2101
* Many changesChris Lattner2002-03-281-0/+22
| | | | | | | | | | | | | * Simplify a lot of the inlining stuff. There are still problems, but not many * Break up the Function representation to have a vector for every different node type so it is fast to find nodes of a particular flavor. * Do more intelligent merging of call values * Allow elimination of unreachable shadow and allocation nodes * Generalize indistinguishability testing to allow merging of identical calls. * Increase shadow node merging power llvm-svn: 2010
* Initial checkin of Datastructure analysis.Chris Lattner2002-03-261-0/+117
Has bugs, but shouldn't crash in theory. llvm-svn: 1994
OpenPOWER on IntegriCloud