summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/DataStructure/EquivClassGraphs.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove DSA.John Criswell2006-12-131-477/+0
| | | | llvm-svn: 32550
* Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, areBill Wendling2006-12-071-1/+1
| | | | | | now cerr, cout, and NullStream resp. llvm-svn: 32298
* Detemplatize the Statistic class. The only type it is instantiated withChris Lattner2006-12-061-2/+2
| | | | | | is 'unsigned'. llvm-svn: 32279
* Convert to using llvm streams instead of iostreams.Bill Wendling2006-11-281-4/+3
| | | | llvm-svn: 31989
* Replace DEBUG(std::cerr with DOUT. Removed some iostream #includes.Bill Wendling2006-11-171-20/+17
| | | | llvm-svn: 31811
* For PR786:Reid Spencer2006-11-021-2/+0
| | | | | | | | | | Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting fall out by removing unused variables. Remaining warnings have to do with unused functions (I didn't want to delete code without review) and unused variables in generated code. Maintainers should clean up the remaining issues when they see them. All changes pass DejaGnu tests and Olden. llvm-svn: 31380
* Eliminate RegisterAnalysis. RegisterPass now does all that is necessary.Chris Lattner2006-08-271-1/+1
| | | | llvm-svn: 29921
* Remove dead variableChris Lattner2006-05-121-2/+0
| | | | llvm-svn: 28249
* Add explicit iostream #includesChris Lattner2006-01-221-0/+1
| | | | llvm-svn: 25513
* Convert tabs to spacesMisha Brukman2005-04-221-6/+6
| | | | llvm-svn: 21439
* Remove trailing whitespaceMisha Brukman2005-04-211-26/+26
| | | | llvm-svn: 21416
* EquivClassGraphs is now in DataStructure.hChris Lattner2005-04-021-2/+1
| | | | llvm-svn: 21042
* use a callee_iterator typedef.Chris Lattner2005-04-021-4/+3
| | | | llvm-svn: 21038
* Change the ActualCallees callgraph from hash_multimap<Instruction,Function>Chris Lattner2005-04-021-4/+4
| | | | | | | | | to std::set<std::pair<Inst,Func>> to avoid duplicate entries. This speeds up the CompleteBU pass from 1.99s to .15s on povray and the eqgraph passes from 1.5s to .16s on the same. llvm-svn: 21031
* don't bother |'ing in 0'sChris Lattner2005-03-241-1/+1
| | | | llvm-svn: 20815
* Now that the dead ctor is gone, nothing uses the old node mapping exported byChris Lattner2005-03-221-6/+2
| | | | | | cloneInto: make it an internally used mapping. llvm-svn: 20760
* now that the second argument is always this->ReturnNodes, don't bother ↵Chris Lattner2005-03-221-3/+5
| | | | | | passing it. llvm-svn: 20758
* remove the second argument to cloneIntoChris Lattner2005-03-221-6/+3
| | | | llvm-svn: 20754
* remove some pointless assertsChris Lattner2005-03-201-1/+0
| | | | llvm-svn: 20713
* Create an equivalence class of global variables that DSA will never be ableChris Lattner2005-03-191-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | to tell apart anyway, and only track the leader for of these equivalence classes in our graphs. This dramatically reduces the number of GlobalValue*'s that appear in scalar maps, which A) reduces memory usage, by eliminating many many scalarmap entries and B) reduces time for operations that need to execute an operation for each global in the scalar map. As an example, this reduces the memory used to analyze 176.gcc from 1GB to 511MB, which (while it's still way too much) is better because it doesn't hit swap anymore. On eon, this shrinks the local graphs from 14MB to 6.8MB, shrinks the bu+td graphs of povray from 50M to 40M, shrinks the TD graphs of 130.li from 8.8M to 3.6M, etc. This change also speeds up DSA on large programs where this makes a big difference. For example, 130.li goes from 1.17s -> 0.56s, 134.perl goes from 2.14 -> 0.93s, povray goes from 15.63s->7.99s (!!!). This also apparently either fixes the problem that caused DSA to crash on perlbmk and gcc, or it hides it, because DSA now works on these. These both take entirely too much time in the TD pass (147s for perl, 538s for gcc, vs 7.67/5.9s in the bu pass for either one), but this is a known problem that I'll deal with later. llvm-svn: 20696
* Switch to use the new interface for the EquivalenceClasses class, and fixChris Lattner2005-03-191-59/+63
| | | | | | a bug involving SCC's who have multiple members that are part of an EC. llvm-svn: 20678
* do not bother inlining nullary functions without return values. The onlyChris Lattner2005-03-181-0/+3
| | | | | | | | | effect these calls can have is due to global variables, and these passes all use the globals graph to capture their effect anyway. This speeds up the BU pass very slightly on perlbmk, reducing the number of dsnodes allocated from 98913 to 96423. llvm-svn: 20676
* make sure to mark nodes in the globals graph incomplete after computing itChris Lattner2005-03-151-0/+1
| | | | | | so that external globals (and whatever they point to) are marked incomplete. llvm-svn: 20628
* fix crashes when we only have a prototype for main.Chris Lattner2005-03-151-1/+1
| | | | llvm-svn: 20627
* Finally fix (the right way) the problem where functions like this:Chris Lattner2005-03-151-0/+24
| | | | | | | | | | | void foo() { G = 1; } would have an empty DSGraph even though G (a global) is directly used in the function. llvm-svn: 20619
* Start using retnodes_* for iteration.Chris Lattner2005-03-151-12/+9
| | | | llvm-svn: 20618
* avoid varialbe name collisionsChris Lattner2005-03-151-2/+3
| | | | llvm-svn: 20606
* This mega patch converts us from using Function::a{iterator|begin|end} toChris Lattner2005-03-151-2/+2
| | | | | | | | using Function::arg_{iterator|begin|end}. Likewise Module::g* -> Module::global_*. This patch is contributed by Gabor Greif, thanks! llvm-svn: 20597
* rename method, add counterpartChris Lattner2005-03-151-1/+1
| | | | llvm-svn: 20593
* add a method to compute a commonly used mapping.Chris Lattner2005-03-141-5/+3
| | | | llvm-svn: 20588
* Make sure to remove incomplete markers before we add to them! :)Chris Lattner2005-03-131-0/+1
| | | | llvm-svn: 20585
* After finishing BU analysis, move all global variables from the globalsChris Lattner2005-03-131-3/+24
| | | | | | graph into main and mark them complete. llvm-svn: 20583
* ADd support for printing eqgraphs.Chris Lattner2005-03-131-2/+2
| | | | llvm-svn: 20582
* remove this from the PA namespace, leaving it in the llvm nsChris Lattner2005-03-121-8/+7
| | | | llvm-svn: 20574
* Move this from the pool allocator project to here, where it logically belongs.Chris Lattner2005-03-121-0/+442
llvm-svn: 20570
OpenPOWER on IntegriCloud