summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/DataStructure/Steensgaard.cpp
Commit message (Collapse)AuthorAgeFilesLines
* * Make some methods more const correct.Chris Lattner2005-01-301-9/+8
| | | | | | | | | | | | | | | | * Change the FunctionCalls and AuxFunctionCalls vectors into std::lists. This makes many operations on these lists much more natural, and avoids *exteremely* expensive copying of DSCallSites (e.g. moving nodes around between lists, erasing a node from not the end of the vector, etc). With a profile build of analyze, this speeds up BU DS from 25.14s to 12.59s on 176.gcc. I expect that it would help TD even more, but I don't have data for it. This effectively eliminates removeIdenticalCalls and children from the profile, going from 6.53 to 0.27s. llvm-svn: 19939
* Add last four createXxxPass functionsJeff Cohen2005-01-091-0/+3
| | | | llvm-svn: 19424
* 'Pass' should now not be derived from by clients. Instead, they should deriveChris Lattner2004-09-201-3/+3
| | | | | | | from ModulePass. Instead of implementing Pass::run, then should implement ModulePass::runOnModule. llvm-svn: 16436
* Changes For Bug 352Reid Spencer2004-09-011-1/+1
| | | | | | | | Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. llvm-svn: 16137
* These files don't need to include <iostream> since they include ↵Brian Gaeke2004-07-211-1/+0
| | | | | | "Support/Debug.h". llvm-svn: 15089
* Move all of the DSA headers into the Analysis/DataStructure subdir.Chris Lattner2004-07-071-2/+2
| | | | llvm-svn: 14663
* Add #include <iostream> since Value.h does not #include it any more.Reid Spencer2004-07-041-0/+1
| | | | llvm-svn: 14622
* Update to match the autochaining interface that the AA interface usesChris Lattner2004-05-231-6/+1
| | | | llvm-svn: 13680
* Forward method request to chained aa implementationChris Lattner2004-01-301-0/+4
| | | | llvm-svn: 11024
* Initial support for implementing clonePartiallyInto in terms of ↵Chris Lattner2004-01-231-1/+2
| | | | | | cloneReachableSubgraph, though this support is currently disabled. llvm-svn: 10970
* Fine-grainify namespaces for this libraryChris Lattner2003-11-121-4/+1
| | | | llvm-svn: 9948
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-111-1/+4
| | | | llvm-svn: 9903
* All DSGraphs keep a reference to the targetdata they are created with. This isChris Lattner2003-11-021-2/+2
| | | | | | | | used to eliminate the hard coded, hacked in, sparc specific, global TargetData. Changing the TargetData used to actually match the code fixes problems, and eliminates a crash. llvm-svn: 9659
* Added LLVM project notice to the top of every C++ source file.John Criswell2003-10-201-0/+7
| | | | | | Header files will be on the way. llvm-svn: 9298
* DEBUG got moved to Support/Debug.hChris Lattner2003-08-011-1/+1
| | | | llvm-svn: 7492
* Move usages of explicit hash_* datastructures to use typedefsChris Lattner2003-06-301-6/+6
| | | | llvm-svn: 6996
* Revamp DSGraphs so that they can support multiple functions in the sameChris Lattner2003-06-301-11/+5
| | | | | | DSGraph at one time llvm-svn: 6994
* Adjust to implement new AA interfaceChris Lattner2003-02-261-16/+9
| | | | llvm-svn: 5638
* Hax0r around a deficiency in the Pass infrastructureChris Lattner2003-02-131-2/+5
| | | | llvm-svn: 5555
* Implement a "union-findy" version of DS-Analysis, which eliminates theChris Lattner2003-02-111-0/+2
| | | | | | Referrers list on DSNodes. llvm-svn: 5536
* Fix problem breaking FhourstonesChris Lattner2003-02-101-1/+2
| | | | llvm-svn: 5526
* Make steensgaards performance not shamefulChris Lattner2003-02-101-6/+12
| | | | llvm-svn: 5524
* Switch to using the right call vectorChris Lattner2003-02-091-0/+2
| | | | llvm-svn: 5517
* Print out the steens graph if -debug is specifiedChris Lattner2003-02-091-1/+2
| | | | llvm-svn: 5514
* Remove explicit result countersChris Lattner2003-02-081-14/+4
| | | | llvm-svn: 5508
* Implement optimization for direct function call case. This dramaticallyChris Lattner2003-02-051-2/+6
| | | | | | | reduces the number of function nodes created and speeds up analysis by about 10% overall. llvm-svn: 5495
* Remove bogus assertionChris Lattner2003-02-041-2/+0
| | | | llvm-svn: 5492
* Fix steensgaard to work on a lot more cases...Chris Lattner2003-02-041-14/+9
| | | | llvm-svn: 5488
* Rename variableChris Lattner2003-02-031-6/+6
| | | | llvm-svn: 5486
* Change DSGraph stuff to use hash_(set|map) instead of std::(set|map)Chris Lattner2003-02-011-10/+10
| | | | | | This change provides a small (3%) but consistent speedup llvm-svn: 5460
* * Eliminate boolean arguments in favor of using enumsChris Lattner2003-01-231-2/+2
| | | | | | * T-D pass now eliminates unreachable globals llvm-svn: 5419
* 'graph' is spelled without a 'c'.Misha Brukman2002-12-121-3/+12
| | | | | | Also added Statistic counters for NoAlias and MayAlias. llvm-svn: 4972
* eliminate the ability to remove global nodes from deadNodeElminate... for now.Chris Lattner2002-11-091-1/+1
| | | | | | | This slows stuff down a bit, but it should get much better before it gets any worse. llvm-svn: 4666
* Clean up DSGraph::removeDeadNodes interfaceChris Lattner2002-11-091-1/+1
| | | | llvm-svn: 4660
* Make removeTriviallyDeadNodes a private interface of DSGraphChris Lattner2002-11-091-1/+1
| | | | llvm-svn: 4659
* Cannot modify original call sites vectorChris Lattner2002-11-081-1/+6
| | | | llvm-svn: 4634
* Use DSNodeHandleMap instead to be safeChris Lattner2002-11-081-1/+1
| | | | llvm-svn: 4622
* Change Steens class to build with Vikram's changesChris Lattner2002-11-061-4/+4
| | | | llvm-svn: 4572
* Rename ValueMap to ScalarMapChris Lattner2002-11-031-4/+5
| | | | llvm-svn: 4516
* Fix comments, steens is context sensitive, we just haven't implementedChris Lattner2002-11-011-3/+3
| | | | | | mod/ref apis yet llvm-svn: 4485
* - Make DSCallSite not inherit from std::vector. Renamed methods slightly.Chris Lattner2002-10-211-4/+5
| | | | | | | | Make copy ctor have two versions to avoid dealing with conditional template argument. DSCallSite ctor now takes all arguments instead of taking one and being populated later. llvm-svn: 4240
* Remove spurious caller pointer in DSCallSite.Vikram S. Adve2002-10-201-3/+3
| | | | | | Also add functions to access pointer argument nodes cleanly. llvm-svn: 4235
* Added a first-class representation for each call site that can beVikram S. Adve2002-10-201-8/+8
| | | | | | | | | used in the DS graphs. Essentially, what was vector<DSNodeHandle> before is now a DSCallSite with the same vector, plus pointers to the CallInst and the caller Function. The special-purpose class BUDataStructure::CallSite is no longer needed. llvm-svn: 4228
* DataStructure.h doesn't include DSGraph.hChris Lattner2002-10-021-0/+1
| | | | llvm-svn: 4029
* Initial checkin of Steensgaards context insensitive flow insensitiveChris Lattner2002-10-011-0/+224
alias analysis llvm-svn: 3997
OpenPOWER on IntegriCloud