aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Analysis/DataStructure
Commit message (Collapse)AuthorAgeFilesLines
* These files don't need to include <iostream> since they include ↵Brian Gaeke2004-07-212-2/+0
| | | | | | "Support/Debug.h". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15089 91177308-0d34-0410-b5e6-96231b3b80d8
* bug 122:Reid Spencer2004-07-183-15/+10
| | | | | | | | | - Replace ConstantPointerRef usage with GlobalValue usage - Minimize redundant isa<GlobalValue> usage - Correct isa<Constant> for GlobalValue subclass git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14942 91177308-0d34-0410-b5e6-96231b3b80d8
* Be compatible with IA64Chris Lattner2004-07-161-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14864 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix for PR341Chris Lattner2004-07-151-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14842 91177308-0d34-0410-b5e6-96231b3b80d8
* Disable some code that isn't helping mattersChris Lattner2004-07-081-1/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14682 91177308-0d34-0410-b5e6-96231b3b80d8
* Headers movedChris Lattner2004-07-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14665 91177308-0d34-0410-b5e6-96231b3b80d8
* Move all of the DSA headers into the Analysis/DataStructure subdir.Chris Lattner2004-07-0714-29/+31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14663 91177308-0d34-0410-b5e6-96231b3b80d8
* Moving headersChris Lattner2004-07-071-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14661 91177308-0d34-0410-b5e6-96231b3b80d8
* As much as I hate to say it, the whole setNode interface for DSNodeHandlesChris Lattner2004-07-072-11/+7
| | | | | | | | | | | | | is HOPELESSLY broken. The problem is that the embedded getNode call can change the offset of the node handle in unpredictable ways. As it turns out, all of the clients of this method really want to set both the node and the offset, thus it is more efficient (and less buggy) to just do both of them in one method call. This fixes some obscure bugs handling non-forwarded node handles. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14660 91177308-0d34-0410-b5e6-96231b3b80d8
* Add #include <iostream> since Value.h does not #include it any more.Reid Spencer2004-07-044-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14622 91177308-0d34-0410-b5e6-96231b3b80d8
* Moved IPModRef out of the public include dirChris Lattner2004-06-283-2/+234
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14455 91177308-0d34-0410-b5e6-96231b3b80d8
* Move DependenceGraph.* to lib/Analysis/DataStructureChris Lattner2004-06-284-2/+343
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14452 91177308-0d34-0410-b5e6-96231b3b80d8
* Move MemoryDepAnalysis.h into lib/Analysis/DataStructureChris Lattner2004-06-284-3/+105
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14448 91177308-0d34-0410-b5e6-96231b3b80d8
* Move PgmDependenceGraph.h out of the public include hierarchyChris Lattner2004-06-283-2/+304
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14446 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix merging of nodes whose incoming offset is not zero. This unbreaks DSA onChris Lattner2004-06-231-2/+1
| | | | | | | several mallocbench programs, including perl. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14342 91177308-0d34-0410-b5e6-96231b3b80d8
* If an edge points to a field of another memory object, actually reflect thisChris Lattner2004-06-221-0/+18
| | | | | | | in the DOT visualization of the DSGraphs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14316 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename Type::PrimitiveID to TypeId and ::getPrimitiveID() to ::getTypeID()Chris Lattner2004-06-171-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14201 91177308-0d34-0410-b5e6-96231b3b80d8
* Recognize memalign and friends, and handle them specially.Vikram S. Adve2004-05-251-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13741 91177308-0d34-0410-b5e6-96231b3b80d8
* Updates to work with the new auto-forwarding AA interface changesChris Lattner2004-05-231-9/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13682 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a really nasty bug with the -disable-ds-field-sensitivity optionChris Lattner2004-05-231-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13681 91177308-0d34-0410-b5e6-96231b3b80d8
* Update to match the autochaining interface that the AA interface usesChris Lattner2004-05-231-6/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13680 91177308-0d34-0410-b5e6-96231b3b80d8
* Inline both direct and indirect callees in the CBU phase becauseVikram S. Adve2004-05-231-34/+34
| | | | | | | a direct callee may have indirect callees and so may have changed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13649 91177308-0d34-0410-b5e6-96231b3b80d8
* Complete rewrite of the code that merges DS graphs for equivalence classesVikram S. Adve2004-05-231-0/+428
| | | | | | | | | | of functions called at a common call site. The rewrite inlines the resulting graphs bottom-up on the SCCs of the CBU call graph. It also simplifies the merging of equivalence classes by exploiting the fact that functions in non-trivial SCCs are already merged. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13645 91177308-0d34-0410-b5e6-96231b3b80d8
* Move the stuff that fixes the size, orientation & fonts of graphs toBrian Gaeke2004-05-051-7/+2
| | | | | | | | | | | | the debugging functions that call "dot". These fixed settings have various problems: for example, the fixed size that is set in the graph traits classes is not appropriate for turning the dot file into a PNG, and if TrueType font rendering is being used, the 'Courier' TrueType font may not be installed. It seems easy enough to specify these things on the command line, anyhow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13366 91177308-0d34-0410-b5e6-96231b3b80d8
* Wrapped code and comments at 80 cols; doxygenified some comments.Misha Brukman2004-04-292-18/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13264 91177308-0d34-0410-b5e6-96231b3b80d8
* If an object is not in the scalar map then it must be a global from anotherChris Lattner2004-04-261-33/+33
| | | | | | | graph. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13173 91177308-0d34-0410-b5e6-96231b3b80d8
* Support getelementptr instructions which use uint's to index into structureChris Lattner2004-04-051-1/+2
| | | | | | | | types and can have arbitrary 32- and 64-bit integer types indexing into sequential types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12653 91177308-0d34-0410-b5e6-96231b3b80d8
* DemoteRegToStack got moved from DemoteRegToStack.h to Local.hChris Lattner2004-03-141-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12368 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a tiny bug that caused an incorrect assertion failure poolallocatingChris Lattner2004-03-131-4/+6
| | | | | | | boxed-sim. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12358 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename the intrinsic enum values for llvm.va_* from Intrinsic::va_* toChris Lattner2004-03-131-5/+3
| | | | | | | Intrinsic::va*. This avoid conflicting with macros in the stdlib.h file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12356 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement getModRefInfo() for DSA to calculate whether a function modifies orMisha Brukman2004-03-121-5/+39
| | | | | | | references a pointer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12330 91177308-0d34-0410-b5e6-96231b3b80d8
* Make code more readable.Misha Brukman2004-03-121-35/+31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12305 91177308-0d34-0410-b5e6-96231b3b80d8
* implement new methodChris Lattner2004-03-091-0/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12264 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a bug handling globals that are constants, but are still externalChris Lattner2004-03-081-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12208 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a minor bugChris Lattner2004-03-051-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12169 91177308-0d34-0410-b5e6-96231b3b80d8
* Unbreak the build on Sparc.Misha Brukman2004-03-051-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12161 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a bug in a previous checkin that broke 175.vprChris Lattner2004-03-041-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12128 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for strto* and v*printfChris Lattner2004-03-041-0/+66
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12127 91177308-0d34-0410-b5e6-96231b3b80d8
* Add non-crappy support for varargsChris Lattner2004-03-041-6/+32
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12126 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement a FIXME, improving the efficiency of DSA on povray.Chris Lattner2004-03-041-2/+16
| | | | | | | | This reduces CBU time from 145s -> 122s (debug build), reduces # allocated nodes from 129420 to 116477. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12125 91177308-0d34-0410-b5e6-96231b3b80d8
* Speed up the cbu pass from taking somewhere near the age of the universe to ↵Chris Lattner2004-03-041-6/+28
| | | | | | about 90s on povray git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12123 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix BU datastructures with povray!Chris Lattner2004-03-041-11/+25
| | | | | | | | | The problem was that we were merging a field of a node with a value that was deleted. Thanks to bugpoint for reducing povray to a nice small 3 function example. :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12116 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor changes, remove some debugging code that got checked in somehow.Chris Lattner2004-03-041-7/+10
| | | | | | | | Make sure to scope the NodeMap passed into cloneInto so that it doesn't point to nodes that are deleted. Add some FIXME's for future performance enhancements. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12115 91177308-0d34-0410-b5e6-96231b3b80d8
* Only clone nodes that are needed in the caller, don't clone ALL aux calls. ↵Chris Lattner2004-03-041-20/+48
| | | | | | | | | This improves povray from having ~600K nodes and 300K call nodes to 65K nodes and 25K call nodes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12109 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a minor bug handling incomplete programsChris Lattner2004-03-031-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12105 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a DSA bug that caused DSA to generate incredibly huge graphs and take ↵Chris Lattner2004-03-031-1/+34
| | | | | | | | | | | forever to do it on povray. The problem is that we were not copying globals from callees to callers unless the existed in both graphs. We should have copied them in the case where the global pointed to a node that was copied as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12104 91177308-0d34-0410-b5e6-96231b3b80d8
* Deinline methods, add fast exitChris Lattner2004-03-031-0/+27
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12102 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a node mapping problem that was causing the pool allocator to locally ↵Chris Lattner2004-03-031-0/+3
| | | | | | | | | allocate nodes that were globally live, thus breaking programs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12094 91177308-0d34-0410-b5e6-96231b3b80d8
* FINALLY be able to get symbolic type names in the globals graph!Chris Lattner2004-03-021-1/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12082 91177308-0d34-0410-b5e6-96231b3b80d8
* Really, only if reopenChris Lattner2004-03-021-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12080 91177308-0d34-0410-b5e6-96231b3b80d8