Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Keep track of the number of typed/untyped memory accesses theyre are in the ↵ | Chris Lattner | 2003-09-20 | 1 | -30/+62 | |
| | | | | | | | | program VS: ---------------------------------------------------------------------- llvm-svn: 8611 | |||||
* | Fixed spelling and grammar. | Misha Brukman | 2003-09-11 | 3 | -5/+5 | |
| | | | | llvm-svn: 8478 | |||||
* | Add more verbose comment | Chris Lattner | 2003-08-05 | 1 | -10/+9 | |
| | | | | llvm-svn: 7610 | |||||
* | Added function mergeInGlobalsGraph which merges in the entire globals graph ↵ | Sumant Kowshik | 2003-08-05 | 1 | -0/+29 | |
| | | | | | | with the graph of a function llvm-svn: 7606 | |||||
* | DEBUG got moved to Support/Debug.h | Chris Lattner | 2003-08-01 | 5 | -3/+6 | |
| | | | | llvm-svn: 7492 | |||||
* | Fix another minor bug | Chris Lattner | 2003-07-26 | 1 | -2/+2 | |
| | | | | llvm-svn: 7340 | |||||
* | Dont' try to parse the colon | Chris Lattner | 2003-07-25 | 1 | -2/+2 | |
| | | | | llvm-svn: 7323 | |||||
* | Add a more general check-flags which can be used to ensure arbitrary flags ↵ | Chris Lattner | 2003-07-25 | 1 | -11/+35 | |
| | | | | | | are set llvm-svn: 7322 | |||||
* | Fix comment. | Vikram S. Adve | 2003-07-22 | 1 | -3/+3 | |
| | | | | llvm-svn: 7227 | |||||
* | Fix typo in call to isUnresolvableFunc, which was breaking the build. | Brian Gaeke | 2003-07-17 | 1 | -1/+1 | |
| | | | | llvm-svn: 7194 | |||||
* | Rematerialize nodes from the globals graph into the current graph | Vikram S. Adve | 2003-07-16 | 1 | -3/+9 | |
| | | | | | | | | | | after all callees are inlined into the current graph. NOTE: There's also a major bug fix for the BU pass in DataStructure.cpp, which ensures that resolvable indirect calls are not moved out to the globals graph, so that they are eventually inlined (if possible). llvm-svn: 7189 | |||||
* | (1) Rematerialize nodes from the globals graph into the current graph | Vikram S. Adve | 2003-07-16 | 1 | -57/+84 | |
| | | | | | | | | | | | | after all callers are inlined into the current graph. (2) Optimize the way a graph is inlined into its callees in the TD phase: (a) Use DSGraph::cloneReachableSubgraph to clone only a subgraph at each call site, for faster inlining. (b) Clone separately for the same callee at different call sites, since only the reachable subgraph is being cloned, not the entire caller graph. llvm-svn: 7188 | |||||
* | Implement 2 important changes: (1) rematerialization from the globals graph, | Vikram S. Adve | 2003-07-16 | 1 | -65/+250 | |
| | | | | | | | | | | | | | | | | | | | | | | | and (2) faster inlining by cloning only reachable nodes. In particular: (1) Added DSGraph::cloneReachableSubgraph and DSGraph::cloneReachableNodes to clone the subgraph reachable from a set of root nodes, into the current graph, merging the global nodes into thos in the current graph. The TD pass now uses this for faster inlining, and so does the next function. (2) Added DSGraph::updateFromGlobalGraph() to rematerialize nodes from the globals graph into the current graph in both BU and TD passes. (3) `I' flags are removed from all nodes in the globals graph, because they are difficult to maintain correctly and are not needed anyway. (4) Aux. function calls are only removed to the globals graph if they will never be resovled. (This is what fixed gap.) The immediate reason is that if we took these out of a function (and moved them to the globals graph) we would need to rematerialize these nodes into the function graph for every function in the BU pass. The longer term problem is that we would need to find a way to remove them from the globals graph iff they have been resolved on all paths through the call graph. llvm-svn: 7187 | |||||
* | Factor out the test for unresolvable external functions into | Vikram S. Adve | 2003-07-16 | 1 | -14/+19 | |
| | | | | | | | isUnresolvableFunc() (I thought I needed this externally. I don't, but it's still nicer this way.) llvm-svn: 7186 | |||||
* | Remove globals more aggressively from graphs. | Chris Lattner | 2003-07-03 | 1 | -11/+32 | |
| | | | | | | Fix a bug where we removed nodes that were marked U. llvm-svn: 7090 | |||||
* | INCLUDE_PARENT_GRAPH is required! | Chris Lattner | 2003-07-02 | 1 | -21/+4 | |
| | | | | llvm-svn: 7088 | |||||
* | Disable incorrect mustalias code | Chris Lattner | 2003-07-02 | 1 | -1/+4 | |
| | | | | llvm-svn: 7087 | |||||
* | Remove space at end of line | Chris Lattner | 2003-07-02 | 1 | -1/+1 | |
| | | | | llvm-svn: 7084 | |||||
* | Fix how we are handling unreachable functions. This DRAMATICALLY improves ↵ | Chris Lattner | 2003-07-02 | 2 | -36/+38 | |
| | | | | | | efficiency llvm-svn: 7082 | |||||
* | Keep track of how many inlinings are performed | Chris Lattner | 2003-07-02 | 1 | -0/+2 | |
| | | | | llvm-svn: 7076 | |||||
* | Try using trivially dead deletion | Chris Lattner | 2003-07-02 | 1 | -0/+1 | |
| | | | | llvm-svn: 7075 | |||||
* | Remove dead Nodes list | Chris Lattner | 2003-07-02 | 1 | -6/+4 | |
| | | | | llvm-svn: 7065 | |||||
* | Complete rewrite of td pass | Chris Lattner | 2003-07-02 | 1 | -103/+101 | |
| | | | | llvm-svn: 7064 | |||||
* | Print collapsed to match the paper | Chris Lattner | 2003-07-02 | 1 | -1/+1 | |
| | | | | llvm-svn: 7063 | |||||
* | Reduce amount of work we do calculating mustaliases if the arg is a global | Chris Lattner | 2003-07-02 | 1 | -11/+16 | |
| | | | | llvm-svn: 7062 | |||||
* | Add support for ParentGraph only when building in debug mode | Chris Lattner | 2003-07-02 | 1 | -8/+48 | |
| | | | | | | Minor cleanups, reenable folding of call nodes to external functions llvm-svn: 7061 | |||||
* | Add some functions to the blacklist | Chris Lattner | 2003-07-02 | 1 | -1/+2 | |
| | | | | llvm-svn: 7060 | |||||
* | Make the BU closure keep track of which actual calls happen | Chris Lattner | 2003-07-02 | 1 | -2/+6 | |
| | | | | | | Minor cleanups llvm-svn: 7059 | |||||
* | Make local pass print out its progress | Chris Lattner | 2003-07-02 | 1 | -0/+3 | |
| | | | | llvm-svn: 7058 | |||||
* | Rework TD pass to work with the precise call graph constructed by the BU phase | Chris Lattner | 2003-07-01 | 2 | -113/+150 | |
| | | | | llvm-svn: 7031 | |||||
* | Do not treat global variables as functions! (and assert failing) | Chris Lattner | 2003-07-01 | 1 | -3/+5 | |
| | | | | llvm-svn: 7030 | |||||
* | Dont' print scalar nodes for ConstantPointerRefs | Chris Lattner | 2003-07-01 | 1 | -1/+2 | |
| | | | | llvm-svn: 7029 | |||||
* | Minor cleanups | Chris Lattner | 2003-07-01 | 1 | -4/+5 | |
| | | | | llvm-svn: 7027 | |||||
* | Use the getFunctionNames method | Chris Lattner | 2003-06-30 | 1 | -8/+3 | |
| | | | | llvm-svn: 7008 | |||||
* | Add new method | Chris Lattner | 2003-06-30 | 1 | -0/+17 | |
| | | | | llvm-svn: 7007 | |||||
* | Split CallSiteIterator out into DSCallSiteIterator.h, and generalize it a bit | Chris Lattner | 2003-06-30 | 2 | -101/+125 | |
| | | | | llvm-svn: 7006 | |||||
* | Be more const-correct | Chris Lattner | 2003-06-30 | 1 | -2/+2 | |
| | | | | llvm-svn: 7005 | |||||
* | Fix bug in last checkin | Chris Lattner | 2003-06-30 | 1 | -1/+1 | |
| | | | | llvm-svn: 7003 | |||||
* | Reimplement the BU closure to collapse all SCC graphs into a single graph. | Chris Lattner | 2003-06-30 | 1 | -242/+52 | |
| | | | | | | Look at all of the code that gets deleted! llvm-svn: 7001 | |||||
* | Handle the case where OldNodeMap == &ScalarMap correctly | Chris Lattner | 2003-06-30 | 1 | -12/+7 | |
| | | | | llvm-svn: 7000 | |||||
* | Remove dead method | Chris Lattner | 2003-06-30 | 1 | -27/+0 | |
| | | | | llvm-svn: 6999 | |||||
* | Do not delete the same graph multiple times when freeing memory if graphs ↵ | Chris Lattner | 2003-06-30 | 1 | -3/+6 | |
| | | | | | | are sharing llvm-svn: 6998 | |||||
* | Do not multiply delete graphs if functions are sharing graphs | Chris Lattner | 2003-06-30 | 1 | -4/+6 | |
| | | | | llvm-svn: 6997 | |||||
* | Move usages of explicit hash_* datastructures to use typedefs | Chris Lattner | 2003-06-30 | 3 | -17/+15 | |
| | | | | llvm-svn: 6996 | |||||
* | Revamp DSGraphs so that they can support multiple functions in the same | Chris Lattner | 2003-06-30 | 6 | -94/+121 | |
| | | | | | | DSGraph at one time llvm-svn: 6994 | |||||
* | Abstract out the predicate which decides whether a function gets complete | Chris Lattner | 2003-06-29 | 1 | -13/+23 | |
| | | | | | | arguments or not... llvm-svn: 6987 | |||||
* | Fix minor bug in previous checkin | Chris Lattner | 2003-06-29 | 1 | -3/+1 | |
| | | | | llvm-svn: 6986 | |||||
* | Add support for ensuring that nodes are not incomplete | Chris Lattner | 2003-06-29 | 1 | -12/+25 | |
| | | | | llvm-svn: 6985 | |||||
* | Add support for "physical subtyping", which fixes: | Chris Lattner | 2003-06-29 | 1 | -5/+140 | |
| | | | | | | DSGraph/2003-06-29-NodeCollapsing2.ll & DSGraph/PhysicalSubtyping.ll llvm-svn: 6982 | |||||
* | Add print method to not get silly warning from analyze | Chris Lattner | 2003-06-29 | 1 | -0/+1 | |
| | | | | llvm-svn: 6981 |