3251e81d793a293b78f4914be6093b405c24fc2a |
|
07-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Move CallGraphSCCPass.h into the Analysis tree; that's where the implementation lives already. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171746 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
0b8c9a80f20772c3793201ab5b251d3520b9cea3 |
|
02-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Move all of the header files which are involved in modelling the LLVM IR into their new header subdirectory: include/llvm/IR. This matches the directory structure of lib, and begins to correct a long standing point of file layout clutter in LLVM. There are still more header files to move here, but I wanted to handle them in separate commits to make tracking what files make sense at each layer easier. The only really questionable files here are the target intrinsic tablegen files. But that's a battle I'd rather not fight today. I've updated both CMake and Makefile build systems (I think, and my tests think, but I may have missed something). I've also re-sorted the includes throughout the project. I'll be committing updates to Clang, DragonEgg, and Polly momentarily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
d04a8d4b33ff316ca4cf961e06c9e312eff8e64f |
|
03-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Use the new script to sort the includes of every file under lib. Sooooo many of these had incorrect or strange main module includes. I have manually inspected all of these, and fixed the main module include to be the nearest plausible thing I could find. If you own or care about any of these source files, I encourage you to take some time and check that these edits were sensible. I can't have broken anything (I strictly added headers, and reordered them, never removed), but they may not be the headers you'd really like to identify as containing the API being implemented. Many forward declarations and missing includes were added to a header files to allow them to parse cleanly when included first. The main module rule does in fact have its merits. =] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169131 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
40b6fdb81e12b40dd41c9f9f07befb60ec7291c3 |
|
15-Nov-2012 |
Owen Anderson <resistor@mac.com> |
Add doInitialization and doFinalization methods to ModulePass's, to allow them to be re-initialized and reused on multiple Module's. Patch by Pedro Artigas. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168008 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
7d539716e2ef6c953bed51cfab5edba98b557657 |
|
29-Jun-2012 |
Nuno Lopes <nunoplopes@sapo.pt> |
RefreshCallGraph: ignore 'invoke intrinsic'. IntrinsicInst doesnt not recognize invoke, and shouldnt at this point, since the rest of LLVM codebase doesnt expect invoke of intrinsics git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159441 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
0e122d1c2422285c872f68fc0ae1f7e5d2739572 |
|
29-Aug-2011 |
Andrew Trick <atrick@apple.com> |
Reapply r138695. Fix PassManager stack depths. Patch by Xiaoyi Guo! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138737 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
8592a0cda4cf4ae76c5a29230fb330d0e952bb62 |
|
27-Aug-2011 |
Andrew Trick <atrick@apple.com> |
Reverting r138695 to see if it fixes clang self host. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138701 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
b84619223051fd965cc64e70c8f6b70f7ae6ae85 |
|
27-Aug-2011 |
Andrew Trick <atrick@apple.com> |
Fix PassManager stack depths. Patch by Xiaoyi Guo! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
1f6a329f79b3568d379142f921f59c4143ddaa14 |
|
12-Aug-2011 |
Duncan Sands <baldrick@free.fr> |
Silence a bunch (but not all) "variable written but not read" warnings when building with assertions disabled. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137460 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
e669d83a21d7ebf01d3c9e37a20c7348b5a77c11 |
|
09-Jun-2011 |
John McCall <rjmccall@apple.com> |
Teach the CallGraph to ignore calls to intrinsics. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132797 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
ab2cee6d51c11553d723b377c7c4df23f918fad2 |
|
04-Sep-2010 |
Chris Lattner <sabre@nondot.org> |
dead method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113077 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
8a757aeac436ecd27e28a39b10032fd6fda33780 |
|
19-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Revert r111199; it breaks -debug-pass=Structure output. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111500 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
65bffec2c2dc87a5974930ec17931721bc485f9a |
|
17-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Make dumpPassStructure be a PMDataManager abstraction, rather than a Pass abstraction, since that's the level it's actually used at. Rename Pass' dumpPassStructure to dumpPass. This eliminates an awkward use of getAsPass() to convert a PMDataManager* into a Pass* just to permit a dumpPassStructure call. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111199 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
90c579de5a383cee278acc3f7e7b9d0a656e6a35 |
|
06-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Reapply r110396, with fixes to appease the Linux buildbot gods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110460 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
1f74590e9d1b9cf0f1f81a156efea73f76546e05 |
|
06-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Revert r110396 to fix buildbots. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110410 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
9ccaf53ada99c63737547c0235baeb8454b04e80 |
|
06-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Don't use PassInfo* as a type identifier for passes. Instead, use the address of the static ID member as the sole unique type identifier. Clean up APIs related to this change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110396 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
ce4a62639f64d2f24577ad4e872f01cd7d6bc82f |
|
28-Jul-2010 |
Gabor Greif <ggreif@gmail.com> |
use Value* constructor of CallSite to create potentially improper site, and test that git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109580 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
bccb41afc8542f01358341451cac85a7115d8763 |
|
01-May-2010 |
Chris Lattner <sabre@nondot.org> |
fix PR5009 by making CGSCCPM realize that a call was devirtualized if an indirect call site was removed and a direct one was added, not just if an indirect call site was modified to be direct. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102830 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
6da12e6767100d3f874c2e05aae74e4fe24357b1 |
|
01-May-2010 |
Chris Lattner <sabre@nondot.org> |
Implement rdar://6295824 and PR6724 with two tiny changes that can have a big effect :). The first is to enable the iterative SCC passmanager juice that kicks in when the scc passmgr detects that a function pass has devirtualized a call. In this case, it will rerun all the passes it manages on the SCC, up to the iteration count limit (4). This is useful because a function pass may devirualize a call, and we want the inliner to inline it, or pruneeh to infer stuff about it, etc. The second patch is to add *all* call sites to the DevirtualizedCalls list the inliner uses. This list is about to get renamed, but the jist of this is that the inliner now reconsiders *all* inlined call sites as candidates for further inlining. The intuition is this that in cases like this: f() { g(1); } g(int x) { h(x); } We analyze this bottom up, and may decide that it isn't profitable to inline H into G. Next step, we decide that it is profitable to inline G into F, and do so, which means that F now calls H. Even though the call from G -> H may not have been profitable to inline, the call from F -> H may be (in this case because a constant allows folding etc). In my spot checks, this doesn't have a big impact on code. For example, the LLC output for 252.eon grew from 0.02% (from 317252 to 317308) and 176.gcc actually shrunk by .3% (from 1525612 to 1520964 bytes). 252.eon never iterated in the SCC Passmgr, 176.gcc iterated at most 1 time. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102823 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
b61789d4dd851c2481d0ad95c7a710d567fb86f7 |
|
22-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
add a DEBUG call so that -debug lists when CGSCCPM iterates. Fix RefreshCallGraph to use CGN->replaceCallEdge instead of hand rolling its own loop. replaceCallEdge properly maintains the reference counts of the nodes, fixing a crash exposed by the iterative callgraph stuff. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102120 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
08e322db8a544d100f7518cfbd39ef8c13067698 |
|
21-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
Implement (but don't enable) PR6724 and rdar://6295824. In short, we have RefreshCallGraph detect when a function pass devirtualizes a call, and have CGSCCPassMgr iterate (up to a count) when this happens. This allows (in the example) GVN to devirtualize the call in foo, then the inliner to inline it away. This is not currently enabled because I haven't done any analysis on the (potentially substantial) code size or performance impact of doing this, and guess what, it exposes callgraph updating bugs in various passes. This is progress though, and you can play with it by passing -max-cg-scc-iterations=5 to opt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101973 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
ca5e4f8e19f32c9ee6e93bc05c37095fb4cedb26 |
|
17-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
reenable r101565, removing a problematic assertion. CGSCC can delete nodes in regions of the callgraph that have already been visited. If new CG nodes are allocated to the same pointer, we shouldn't abort, just handle it correctly by assigning a new number. This should restore stability by removing invalidated pointers that *will* be reused from the densemap in the iterator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101628 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
7e3e3252a187d10df89701fec292ef159362880e |
|
17-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
disable r101565: an assert is getting triggered. More lurking badness no doubt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101583 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
bde0bb5f882ae708ca70a42bdd3a9805e63f6fb7 |
|
17-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
building on the new CallGraphSCC abstraction, teach CallGraphSCCPassManager to keep the node entries in scc_iterator up to date instead of dangling as the SCC mutates. This is a really terrible problem which was causing -g to affect codegen because it would permute the memory image of the compiler process. Thanks to Dale for expertly hunting it down. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101565 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
a3dfc646b4d772979f8994c07eeee6af57480d34 |
|
17-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
move ReplaceNode out of line, rename scc_iterator::fini -> isAtEnd(). No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101562 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
2decb22222cac46bb1d9163e7b89d7e5be8ef65f |
|
17-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
introduce a new CallGraphSCC class, and pass it around to CallGraphSCCPass's instead of passing around a std::vector<CallGraphNode*>. No functionality change, but now we have a much tidier interface. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101558 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
c93760c3e55db7e5fadbbf0f75fa3587cd8bb9dc |
|
16-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
move PrintCallGraphPass out of the middle of CGPassManager. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101543 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
5c8aa950fe3484b6e115647328c196f8be64f9ed |
|
03-Apr-2010 |
David Greene <greened@obbligato.org> |
Ok, third time's the charm. No changes from last time except the CMake source addition. Apparently the buildbots were wrong about failures. --- Add some switches helpful for debugging: -print-before=<Pass Name> Dump IR before running pass <Pass Name>. -print-before-all Dump IR before running each pass. -print-after-all Dump IR after running each pass. These are helpful when tracking down a miscompilation. It is easy to get IR dumps and do diffs on them, etc. To make this work well, add a new getPrinterPass API to Pass so that each kind of pass (ModulePass, FunctionPass, etc.) can create a Pass suitable for dumping out the kind of object the Pass works on. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100249 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
cf5862d8ac9562e633e6ef7cb55e67c2b7ca9c0a |
|
02-Apr-2010 |
Evan Cheng <evan.cheng@apple.com> |
Revert 100204. It broke a bunch of tests and apparently changed what passes are run during codegen. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100207 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
434bd8551d71384648f2e155d76b5ddbc4d1b258 |
|
02-Apr-2010 |
David Greene <greened@obbligato.org> |
Let's try this again. Re-apply 100143 including an apparent missing <string> include. For some reason the buildbot choked on this while my builds did not. It's probably due to a difference in system headers. --- Add some switches helpful for debugging: -print-before=<Pass Name> Dump IR before running pass <Pass Name>. -print-before-all Dump IR before running each pass. -print-after-all Dump IR after running each pass. These are helpful when tracking down a miscompilation. It is easy to get IR dumps and do diffs on them, etc. To make this work well, add a new getPrinterPass API to Pass so that each kind of pass (ModulePass, FunctionPass, etc.) can create a Pass suitable for dumping out the kind of object the Pass works on. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100204 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
1d8f83d0a00e912c55ec0974eba6122666cc6fa1 |
|
02-Apr-2010 |
Eric Christopher <echristo@apple.com> |
Revert r100143. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100146 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
8ef3acba00c9c42d450fa52c7d3faebce1e507dd |
|
02-Apr-2010 |
David Greene <greened@obbligato.org> |
Add some switches helpful for debugging: -print-before=<Pass Name> Dump IR before running pass <Pass Name>. -print-before-all Dump IR before running each pass. -print-after-all Dump IR after running each pass. These are helpful when tracking down a miscompilation. It is easy to get IR dumps and do diffs on them, etc. To make this work well, add a new getPrinterPass API to Pass so that each kind of pass (ModulePass, FunctionPass, etc.) can create a Pass suitable for dumping out the kind of object the Pass works on. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100143 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
a782e75d487006cafffdc256b3c623307fee4dcf |
|
30-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
reapply my timer rewrite with a change for PassManager to store timers by pointer instead of by-value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99871 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
0d2725ad696afb60c86076469031783669809739 |
|
30-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
revert r99862 which is causing FNT failures. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99870 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
9fa0eff30a0d4fcbc84ac3ada4c47620b5449043 |
|
30-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
fairly major rewrite of various timing related stuff. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99862 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
5a66cb9a4450e5b7b0f5f586ab47a529c478223b |
|
22-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
eliminate dynamic_cast from this file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94157 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
77c95ed74a4d5f122b3c9810209a0190dbf17504 |
|
22-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
eliminate a bunch more unneeded dynamic_cast's. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94156 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
3660ecabbb85b31308f38938ce3f56f0a330a84b |
|
22-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
eliminate a bunch of dynamic_cast's. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94155 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
2e48e53d980ee9af1bc96d8ffd9d089cb8d3b5ef |
|
24-Dec-2009 |
David Greene <greened@obbligato.org> |
Change dbgs() back to errs() for assert messages as Chris requested. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92080 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
c81ce58306ce8d087ed3f5accd3212d2d08eb0a9 |
|
23-Dec-2009 |
David Greene <greened@obbligato.org> |
Convert debug messages to use dbgs(). Generally this means s/errs/dbgs/g except for certain special cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92035 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
5c12adaa8b92800d835ddd5c97723c6eb5628b5b |
|
28-Sep-2009 |
Dan Gohman <gohman@apple.com> |
Extend the StartPassTimer and StopPassTimer functions so that the code that stops the timer doesn't have to search to find the timer object before it stops the timer. This avoids a lock acquisition and a few other things done with the timer running. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82949 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
9554c613282c28fbe94bc8b0a5ba736f046643b8 |
|
15-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
make -debug-pass=Executions show information about what call graph nodes are in the SCC for each execution of a CGSCC pass. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81838 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
db2659be58a5d9a820eeb5884f284143f6676f86 |
|
11-Sep-2009 |
Dale Johannesen <dalej@apple.com> |
Fix uppercaseo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81463 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
d3bd0821b00f1100ab98454264c8775ace826f0d |
|
02-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
revert my patch, duncan points out what is wrong with my logic. Add a comment so that I don't change this in the future :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80760 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
b8bcbd61a8a8ea3960da47734579150f514abfbb |
|
02-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
one more try at making this simpler, hopefully it won't break everything :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80759 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
b3020d7a08b951adff8d102b27aaa0bc2a7156da |
|
02-Sep-2009 |
Duncan Sands <baldrick@free.fr> |
Complicate Chris's simplification, avoiding complaints about singular iterators when building with expensive checks turned on. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80757 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
8bff7c960c0e52258158edcbb96cfe528f335f34 |
|
01-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
debug intrinsics do not go in the callgraph, this fixes a couple clang regtest failures. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80724 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
44a18370e0fe77a1b31698e945a9ce9f691364fb |
|
01-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
Fix a regression I introduced in r80708, found by llvm-test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80718 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
da230cb876edf0d4fa8eefc289b8addfb722cd07 |
|
01-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
remove CallGraphNode::replaceCallSite, it is redundant with other APIs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80708 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
5a6a363527f9f66ff23f2d281f4fdc6c2084f2d3 |
|
01-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
doxygenate RefreshCallGraph, add a new 'verification mode', and run it after CGSCC passes make change to ensure they are updating the callgraph correctly (when assertions are enabled). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80698 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
17146b867f72c2ca020e2ba8b0b6cbba93a1f7c8 |
|
01-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
simpler solution to iterator invalidation "problem" found by expensive checking. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
c142bb294b689b5eb4d842dfe18ea755bc65c79f |
|
01-Sep-2009 |
Duncan Sands <baldrick@free.fr> |
Do not manipulate invalid iterators. This fixes the llvm-gcc build when expensive checking is turned on. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80671 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
a541b0fde2ab6b8b037edf113d42da41a2c5aae9 |
|
01-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
Change CallGraphNode to maintain it's Function as an AssertingVH for sanity. This didn't turn up any bugs. Change CallGraphNode to maintain its "callsite" information in the call edges list as a WeakVH instead of as an instruction*. This fixes a broad class of dangling pointer bugs, and makes CallGraph have a number of useful invariants again. This fixes the class of problem indicated by PR4029 and PR3601. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80663 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
2038cf31684089fe745a3971e32f4d208b68a0a4 |
|
31-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
cleanups pointed out by duncan git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80595 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
be577659d3c1222cc58c33628c0baddb94d241ab |
|
31-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Step #1 to giving Callgraph some sane invariants. The problems with callgraph stem from the fact that we have two types of passes that need to update it: 1. callgraphscc and module passes that are explicitly aware of it 2. Functionpasses (and loop passes etc) that are interlaced with CGSCC passes by the CGSCC Passmgr. In the case of #1, we can reasonably expect the passes to update the call graph just like any analysis. However, functionpasses are not and generally should not be CG aware. This has caused us no end of problems, so this takes a new approach. Logically, the CGSCC Pass manager can rescan every function after it runs a function pass over it to see if the functionpass made any updates to the IR that affect the callgraph. This allows it to catch new calls introduced by the functionpass. In practice, doing this would be slow. This implementation keeps track of whether or not the current scc is dirtied by a function pass, and, if so, delays updating the callgraph until it is actually needed again. This was we avoid extraneous rescans, but we still have good invariants when the callgraph is needed. Step #2 of the "give Callgraph some sane invariants" is to change CallGraphNode to use a CallBackVH for the callsite entry of the CallGraphNode. This way we can immediately remove entries from the callgraph when a FunctionPass is active instead of having dangling pointers. The current pass tries to tolerate these dangling pointers, but it is just an evil hack. This is related to PR3601/4835/4029. This also reverts r80541, a hack working around the sad lack of invariants. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80566 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
f3a1c15b750c63accd3597b42d73792458b247a9 |
|
31-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
cleanups, factor some code out to a helper function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80542 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
5095e3d1d1caef8d573534d369e37277c623064c |
|
31-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Fix some nasty callgraph dangling pointer problems in argpromotion and structretpromote. Basically, when replacing a function, they used the 'changeFunction' api which changes the entry in the function map (and steals/reuses the callgraph node). This has some interesting effects: first, the problem is that it doesn't update the "callee" edges in any callees of the function in the call graph. Second, this covers for a major problem in all the CGSCC pass stuff, which is that it is completely broken when functions are deleted if they *don't* reuse a CGN. (there is a cute little fixme about this though :). This patch changes the protocol that CGSCC passes must obey: now the CGSCC pass manager copies the SCC and preincrements its iterator to avoid passes invalidating it. This allows CGSCC passes to mutate the current SCC. However multiple passes may be run on that SCC, so if passes do this, they are now required to *update* the SCC to be current when they return. Other less interesting parts of this patch are that it makes passes update the CG more directly, eliminates changeFunction, and requires clients of replaceCallSite to specify the new callee CGN if they are changing it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80527 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
45cfe545ec8177262dabc70580ce05feaa1c3880 |
|
23-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Change Pass::print to take a raw ostream instead of std::ostream, update all code that this affects. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79830 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
460f656475738d1a95a6be95346908ce1597df25 |
|
26-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove Value::getName{Start,End}, the last of the old Name APIs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77152 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
8968a0776801c5662863b3a461550aa361f69ba3 |
|
13-Feb-2009 |
Nick Lewycky <nicholas@mxc.ca> |
Reapply r64300: Make sure the SCC pass manager initializes any contained function pass managers. Without this, simplify-libcalls would add nocapture attributes when run on its own, but not when run as part of -std-compile-opts or similar. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64443 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
905c7e9a0459ffdffbee3e6fffe0dbf5e5c9583c |
|
11-Feb-2009 |
Bill Wendling <isanbard@gmail.com> |
Revert r64300 and r64301. These were causing the following errors respectively: During llvm-gcc bootstrap: Undefined symbols: "llvm::FPPassManager::doFinalization(llvm::Module&)", referenced from: (anonymous namespace)::CGPassManager::doFinalization(llvm::CallGraph&, llvm::Module&) in libLLVMipa.a(CallGraphSCCPass.o) "llvm::FPPassManager::doInitialization(llvm::Module&)", referenced from: (anonymous namespace)::CGPassManager::doInitialization(llvm::CallGraph&, llvm::Module&) in libLLVMipa.a(CallGraphSCCPass.o) ld: symbol(s) not found collect2: ld returned 1 exit status make[3]: *** [/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore.roots/llvmCore~obj/obj-llvm/Release/bin/opt] Error 1 During an LLVM release build: /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/Release/bin/tblgen -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/lib/Target/X86 -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/include -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/include -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/lib/Target -gen-register-desc -o /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/lib/Target/X86/Release/X86GenRegisterInfo.inc.tmp /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/lib/Target/X86/X86.td llvm[3]: Building X86.td instruction names with tblgen /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/Release/bin/tblgen -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/lib/Target/X86 -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/include -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/include -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/lib/Target -gen-instr-enums -o /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/lib/Target/X86/Release/X86GenInstrNames.inc.tmp /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/lib/Target/X86/X86.td llvm[3]: Building X86.td instruction information with tblgen /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/Release/bin/tblgen -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/lib/Target/X86 -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/include -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/include -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/lib/Target -gen-instr-desc -o /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/lib/Target/X86/Release/X86GenInstrInfo.inc.tmp /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/lib/Target/X86/X86.td llvm[3]: Building X86.td assembly writer with tblgen /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/Release/bin/tblgen -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/lib/Target/X86 -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/include -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/include -I /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/lib/Target -gen-asm-writer -o /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/lib/Target/X86/Release/X86GenAsmWriter.inc.tmp /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/lib/Target/X86/X86.td llvm[3]: Compiling InstructionCombining.cpp for Release build if /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmgcc42.roots/llvmgcc42~dst/Developer/usr/bin/llvm-g++-4.2 -I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/include -I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/lib/Transforms/Scalar -I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/include -I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/lib/Transforms/Scalar -D_DEBUG -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -O3 -fno-exceptions -Woverloaded-virtual -pedantic -Wall -W -Wwrite-strings -Wno-long-long -Wunused -Wno-unused-parameter -fstrict-aliasing -Wstrict-aliasing -c -MMD -MP -MF "/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/lib/Transforms/Scalar/Release/InstructionCombining.d.tmp" -MT "/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/lib/Transforms/Scalar/Release/InstructionCombining.lo" -MT "/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/lib/Transforms/Scalar/Release/InstructionCombining.o" -MT "/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/lib/Transforms/Scalar/Release/InstructionCombining.d" /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore/lib/Transforms/Scalar/InstructionCombining.cpp -o /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/lib/Transforms/Scalar/Release/InstructionCombining.o ; \ then /bin/mv -f "/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/lib/Transforms/Scalar/Release/InstructionCombining.d.tmp" "/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.sh.build/lib/Trans git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64311 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
af068750a71780a2f1780f056af0c21208a408dd |
|
11-Feb-2009 |
Duncan Sands <baldrick@free.fr> |
Make sure the SCC pass manager initializes any contained function pass managers. Without this, simplify-libcalls would add nocapture attributes when run on its own, but not when run as part of -std-compile-opts or similar. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64300 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
ae73dc1448d25b02cabc7c64c86c64371453dda8 |
|
04-Sep-2008 |
Dan Gohman <gohman@apple.com> |
Tidy up several unbeseeming casts from pointer to intptr_t. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55779 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
0dabb7e8f3e371cf0d6a9747b5bd4b555cc32c95 |
|
08-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Don't call getAnalysisUsage unless -debug-pass is enabled. This speeds up the passmgr by avoiding useless work. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54528 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
844731a7f1909f55935e3514c9e713a62d67662e |
|
13-May-2008 |
Dan Gohman <gohman@apple.com> |
Clean up the use of static and anonymous namespaces. This turned up several things that were neither in an anonymous namespace nor static but not intended to be global. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51017 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
201ebe3899dc699ae081b557a6bffc53a4dda147 |
|
03-May-2008 |
Devang Patel <dpatel@apple.com> |
Add assert. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50596 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
4ee451de366474b9c228b4e5fa573795a715216d |
|
29-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Remove attribution from file headers, per discussion on llvmdev. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45418 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
6b4af744b844ba5cf319614b6a27d213548706ee |
|
10-Aug-2007 |
Devang Patel <dpatel@apple.com> |
Do not overuse std::string. Pass around char * directly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41001 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
c2bbfc18e9adbbdcf5b3375d8d25e2452f7df7f1 |
|
01-Aug-2007 |
Dan Gohman <gohman@apple.com> |
More explicit keywords. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40673 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
58e0ef1e90c3f6dbae213612b44e56f7d6d65ea7 |
|
19-Jul-2007 |
Devang Patel <dpatel@apple.com> |
Verify loop info. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40062 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
20d824b7dfea987775586d9de56c7448cc2cc44d |
|
19-Jul-2007 |
Duncan Sands <baldrick@free.fr> |
Replace mysterious code causing a g++-4.2 warning with hopefully correct code that pleases g++-4.2. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40051 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
25e681ac221e83a7ebead99b4d3d88f1b3ab49bd |
|
22-Jun-2007 |
Devang Patel <dpatel@apple.com> |
CallGraphSCCPass manager may require other passes. Use schedulePass() to accomodate these requirement instead of directly assigning a manager to new CallGraph PassManager. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
1997473cf72957d0e70322e2fe6fe2ab141c58a6 |
|
03-May-2007 |
Devang Patel <dpatel@apple.com> |
Drop 'const' git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36662 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
3e15bf33e024b9df9e89351a165acfdb1dde51ed |
|
02-May-2007 |
Devang Patel <dpatel@apple.com> |
Use 'static const char' instead of 'static const int'. Due to darwin gcc bug, one version of darwin linker coalesces static const int, which defauts PassID based pass identification. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36652 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
794fd75c67a2cdc128d67342c6d88a504d186896 |
|
01-May-2007 |
Devang Patel <dpatel@apple.com> |
Do not use typeinfo to identify pass in pass manager. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36632 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
bed2946a96ecb15b0b636fa74cb26ce61b1c648e |
|
16-Apr-2007 |
Anton Korobeynikov <asl@math.spbu.ru> |
Removed tabs everywhere except autogenerated & external files. Add make target for tabs checking. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36146 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
7f99761143cdf1ad23729708e3dcaa055b189406 |
|
05-Mar-2007 |
Devang Patel <dpatel@apple.com> |
Avoid constructing std::strings unless pass debugging is ON. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34933 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
84da80d10b472332d079c58d21aa48b82e636274 |
|
27-Feb-2007 |
Devang Patel <dpatel@apple.com> |
Make getPassManagerType() const. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34669 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
95ced11b1a913c0c8ee0efacadddf48da25aef97 |
|
01-Feb-2007 |
Devang Patel <dpatel@apple.com> |
Dump function names when debug-pass=Executions is used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33772 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
505f36aedec873d99bdaabb8836eac704185f086 |
|
01-Feb-2007 |
Devang Patel <dpatel@apple.com> |
Pretty print pass manager git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33766 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
f5b17fd938afe39a47ef5aef1b04cb6f437e3b98 |
|
30-Jan-2007 |
Devang Patel <dpatel@apple.com> |
Use StartPassTimer() and StopPassManager() git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33640 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
f82aa1cf73b6cdd0c6713ad365bae1204755ee2f |
|
29-Jan-2007 |
Devang Patel <dpatel@apple.com> |
Measure timings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33627 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
129ccd9def1cb98a0442140b407f9e91e323829a |
|
26-Jan-2007 |
Devang Patel <dpatel@apple.com> |
Remove dead code. CallGraphSCCPass does not need to implement runOnModule(). It supports runOnSCC(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33516 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
d9f10c3d11997bc7e3d1b3da3baabae47445d5c6 |
|
23-Jan-2007 |
Devang Patel <dpatel@apple.com> |
Fix typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33467 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
97fd2439f2b30b575cdd67eef52e03937d483680 |
|
23-Jan-2007 |
Devang Patel <dpatel@apple.com> |
Add CallGraphSCCPass::assignPassManager(). This enables CalLGraphPassManager. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33466 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
75f9abf51706242a745e05841598f68e64143494 |
|
17-Jan-2007 |
Devang Patel <dpatel@apple.com> |
Add CGPassManager. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33309 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
2b37d7cf28b1382420b5e4007042feeb66d21ac8 |
|
21-Apr-2005 |
Misha Brukman <brukman+llvm@gmail.com> |
Remove trailing whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21416 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
b12914bfc0f76a7a48357162d5f4c39a1343e69b |
|
20-Sep-2004 |
Chris Lattner <sabre@nondot.org> |
'Pass' should now not be derived from by clients. Instead, they should derive from ModulePass. Instead of implementing Pass::run, then should implement ModulePass::runOnModule. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16436 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
551ccae044b0ff658fe629dd67edd5ffe75d10e8 |
|
02-Sep-2004 |
Reid Spencer <rspencer@reidspencer.com> |
Changes For Bug 352 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/. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
72035995d50084676b2f9c1db0869f81f2faccf4 |
|
20-Apr-2004 |
Chris Lattner <sabre@nondot.org> |
Pass the callgraph not the module git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13087 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
a10df5028211fc897751d23e91d035db47d23fac |
|
20-Apr-2004 |
Chris Lattner <sabre@nondot.org> |
Add the ability for SCC passes to initialize and finalize themselves git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13084 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
d0fde30ce850b78371fd1386338350591f9ff494 |
|
11-Nov-2003 |
Brian Gaeke <gaeke@uiuc.edu> |
Put all LLVM code into the llvm namespace, as per bug 109. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
b576c94c15af9a440f69d9d03c2afead7971118c |
|
20-Oct-2003 |
John Criswell <criswell@uiuc.edu> |
Added LLVM project notice to the top of every C++ source file. Header files will be on the way. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
55b2eb3ef828819a623444ce966e70ad86ad6da4 |
|
31-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Rename TarjanSCCIterator -> scc_iterator * Increases consistency with other iterators (e.g. df_iterator, po_iterator...) * It's shorter * We don't name classes by the implementation, we name it for the interface! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8273 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
6c5fd8e0551f99ce46908fedd502b0dbf5864c74 |
|
31-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
The tarjan iterator now returns a reference to the current SCC, not a possibly null pointer! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8262 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|
4a81067a84e18c44898149f5afdbaa3e18b3e821 |
|
31-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Initial checkin of the CallGraphSCCPass class git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8247 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp
|