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/CallGraph.cpp
|
9ad1cb59deda265441c1614fee5ec7f7dea7625d |
|
03-Jan-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Add spliceFunction to the CallGraph interface. This allows users to efficiently update a callGraph when performing the common operation of splicing the body to a new function and updating all callers (such as via RAUW). No users yet, though this is intended for DeadArgumentElimination as part of PR8887. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122728 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
081c34b725980f995be9080eaec24cd3dfaaf065 |
|
19-Oct-2010 |
Owen Anderson <resistor@mac.com> |
Get rid of static constructors for pass registration. Instead, every pass exposes an initializeMyPassFunction(), which must be called in the pass's constructor. This function uses static dependency declarations to recursively initialize the pass's dependencies. Clients that only create passes through the createFooPass() APIs will require no changes. Clients that want to use the CommandLine options for passes will need to manually call the appropriate initialization functions in PassInitialization.h before parsing commandline arguments. I have tested this with all standard configurations of clang and llvm-gcc on Darwin. It is possible that there are problems with the static dependencies that will only be visible with non-standard options. If you encounter any crash in pass registration/creation, please send the testcase to me directly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116820 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
325e2643559fcec8b0396dfa16e415cc86a22a09 |
|
13-Oct-2010 |
Owen Anderson <resistor@mac.com> |
Analysis groups need to initialize their default implementations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116441 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
ce665bd2e2b581ab0858d1afe359192bac96b868 |
|
08-Oct-2010 |
Owen Anderson <resistor@mac.com> |
Now with fewer extraneous semicolons! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115996 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
e9ef41a47d2ee637b6aed5d018c4d90019d987ac |
|
06-Oct-2010 |
Owen Anderson <resistor@mac.com> |
Hide analysis group registration behind a macro, just like pass registration. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115835 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.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/CallGraph.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/CallGraph.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/CallGraph.cpp
|
3737984e95e91f6c777414ce5f68fe4c8db32dd5 |
|
28-Jul-2010 |
Gabor Greif <ggreif@gmail.com> |
use Value* constructor of CallSite to create potentially improper site git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109579 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
d8cc7be0262092882d848a1c7d8a4cb6752cce6f |
|
22-Jul-2010 |
Owen Anderson <resistor@mac.com> |
Add INSTANTIATE_AG_PASS, which combines RegisterPass<> with RegisterAnalysisGroup<> for pass registration. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109058 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
8be3291f5942e3ae4a5d66c480e7aabe2f771031 |
|
20-Jul-2010 |
Owen Anderson <resistor@mac.com> |
Speculatively revert r108813, in an attempt to get the self-host buildbots working again. I don't see why this patch would cause them to fail the way they are, but none of the other intervening patches seem likely either. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108818 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
9e081004dad1c3cae7de82ad412c3f19a1a48d48 |
|
20-Jul-2010 |
Owen Anderson <resistor@mac.com> |
Reapply r108794, a fix for the failing test from last time. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108813 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
e8a469cdb400249ec263c79d1021f953f42f2760 |
|
20-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
Revert r108794, "Separate PassInfo into two classes: a constructor-free superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo).", it is breaking teh everything. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108805 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
8ba15cb7099d9eadcb345328228d77ffa5afa42d |
|
20-Jul-2010 |
Owen Anderson <resistor@mac.com> |
Separate PassInfo into two classes: a constructor-free superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108794 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
517e124d53a673c35e34feec39304a1c6448d371 |
|
09-Jul-2010 |
Gabor Greif <ggreif@gmail.com> |
do not repeatedly dereference use_iterator git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107963 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
6275413ff5977a7950b775ecc8e8d55af191934d |
|
23-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
fix callgraph dump to not print 0x0x1234 for nodes. Add the instruction pointer value for debuggability. We now get dump output that looks like this: Call graph node for function: 'f1'<<0x1017086b0>> #uses=1 CS<0x1017046f8> calls external node Call graph node for function: '_ZNSt6vectorIdSaIdEEC1EmRKdRKS0_'<<0x1017086f0>> #uses=1 CS<0x0> calls external node Call graph node for function: 'f4'<<0x1017087a0>> #uses=1 CS<0x101708c88> calls function 'f3' git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102194 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
eb1f4b1899fdbb95807c3dcaa5f03f5129c4a156 |
|
20-Apr-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
PR6880: Don't dereference CallsExternalNode if it's NULL. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101897 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
8a39ed75ec57c7fabde318c0d45fac014ac287f4 |
|
20-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
make CallGraphNode dtor abort if a node is deleted when there are still references to it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101847 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
cdac3a380ba77cf68d136ec738c0c1ac52eb83df |
|
20-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
adopt getAdjustedAnalysisPointer in BasicCallGraph. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94015 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
265c026fee512f8206050c0b3f956fe072b05b34 |
|
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@92034 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
076124ef26ff67f88663bd11f3b4d6b3d3bb3a9d |
|
01-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Reverting 85714, 85715, 85716, which are breaking the build git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85717 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
34e9d7b6be970b4a6aae876e3c40a4151da67e6e |
|
01-Nov-2009 |
Dan Gohman <gohman@apple.com> |
Don't #include Pass.h from CallGraph.h. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85715 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
f5a86f45e75ec744c203270ffa03659eb0a220c1 |
|
25-Oct-2009 |
Nick Lewycky <nicholas@mxc.ca> |
Remove includes of Support/Compiler.h that are no longer needed after the VISIBILITY_HIDDEN removal. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85043 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
6726b6d75a8b679068a58cb954ba97cf9d1690ba |
|
25-Oct-2009 |
Nick Lewycky <nicholas@mxc.ca> |
Remove VISIBILITY_HIDDEN from class/struct found inside anonymous namespaces. Chris claims we should never have visibility_hidden inside any .cpp file but that's still not true even after this commit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85042 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
a51c39cc3265f5d0d5de87b4a3ef9332c83556e1 |
|
15-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
add a new CallGraphNode::replaceCallEdge method and use it from argpromote to avoid invalidating an iterator. This fixes PR4977. All clang tests now pass with expensive checking (on my system at least). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81843 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.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/CallGraph.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/CallGraph.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/CallGraph.cpp
|
46ca76f6bb1648087890f2647bc93a005e0970a7 |
|
31-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
fix a crash building SPASS by tolerating a callsite that doesn't exist in the callgraph, see the big comment at the top of the testcase. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80541 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
b374b90e81d0ce6b5d02041ba4f7b15a945b38d8 |
|
31-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Fix PR4834, a tricky case where the inliner would resolve an indirect function pointer, inline it, then go to delete the body. The problem is that the callgraph had other references to the function, though the inliner had no way to know it, so we got a dangling pointer and an invalid iterator out of the deal. The fix to this is pretty simple: stop the inliner from deleting the function by knowing that there are references to it. Do this by making CallGraphNodes contain a refcount. This requires moving deletion of available_externally functions to the module-level cleanup sweep where it belongs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80533 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
2adb8306e2256a4d1bef8f21ebb6dba55a108a88 |
|
31-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
use an accessor instead of poking internals of a node. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80532 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.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/CallGraph.cpp
|
23603a61c9bd43224db0b52126a415901d7550b4 |
|
31-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
add a dump() method on callgraph. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80524 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.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/CallGraph.cpp
|
ce63ffb52f249b62cdf2d250c128007b13f27e71 |
|
25-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
More migration to raw_ostream, the water has dried up around the iostream hole. - Some clients which used DOUT have moved to DEBUG. We are deprecating the "magic" DOUT behavior which avoided calling printing functions when the statement was disabled. In addition to being unnecessary magic, it had the downside of leaving code in -Asserts builds, and of hiding potentially unnecessary computations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77019 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
1f67ce4aa3f65619f54c8a3072539da5b0022841 |
|
19-Mar-2009 |
Dale Johannesen <dalej@apple.com> |
Clear the cached cost when removing a function in the inliner; prevents nondeterministic behavior when the same address is reallocated. Don't build call graph nodes for debug intrinsic calls; they're useless, and there were typically a lot of them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67311 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
edc4d69917df7dc34543adf719d5c93249fd5e27 |
|
22-Jan-2009 |
Gabor Greif <ggreif@gmail.com> |
introduce a useful abstraction to find out if a Use is in the call position of an instruction git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62788 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
7f2e381b565701d9856ac75d9a90454eed57547c |
|
17-Jan-2009 |
Gabor Greif <ggreif@gmail.com> |
switch over some other methods from indices to iterators git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62430 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
7b98424f719bf0bde6250e35d311e877d6c3d5b7 |
|
17-Jan-2009 |
Gabor Greif <ggreif@gmail.com> |
speed up iterative loop by using iterators. changes direction, but functionally equivalent if this works out, I'll change the others next. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62385 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
bb46f52027416598a662dc1c58f48d9d56b1a65b |
|
15-Jan-2009 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add the private linkage. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62279 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
6104626b467d22518f16c74cd67cba89168f65d4 |
|
14-Jan-2009 |
Gabor Greif <ggreif@gmail.com> |
minor simplification git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62232 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
a2582da44dbe7204aac49cdaeccfd4e77ff7c408 |
|
03-Oct-2008 |
Duncan Sands <baldrick@free.fr> |
Teach internalize to preserve the callgraph. Why? Because it was there! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56996 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
7ca9d81bce9b3ea6ed2f5e7476a6c4d15c882b2a |
|
09-Sep-2008 |
Duncan Sands <baldrick@free.fr> |
Simplify this some more. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56003 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
24a052124bca3a518c9b30fbc57fa54f76bfbc46 |
|
09-Sep-2008 |
Duncan Sands <baldrick@free.fr> |
Optimization suggested by Matthijs Kooijman. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55988 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
99c1a7c9e1f501878040f3adcac342b2d8201709 |
|
09-Sep-2008 |
Duncan Sands <baldrick@free.fr> |
Correct callgraph construction. It has two problems: (1) code left over from the days of ConstantPointerRef: if a use of a function is a GlobalValue then that is not considered a reason to add an edge from the external node, even though the use may be as an initializer for an externally visible global! There might be some point to this behaviour when the use is by an alias (though the code predated aliases by some centuries), but I think PR2782 is a better way of handling that. (2) If function F calls function G, and also G is a parameter to the call, then an F->G edge is not added to the callgraph. While this doesn't seem to matter much, adding such an edge makes the callgraph more regular. In addition, the new code should be faster as well as simpler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55987 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
28f02128ae21f2cb024c97d813faacd6e7bf4410 |
|
08-Sep-2008 |
Duncan Sands <baldrick@free.fr> |
Didn't mean to commit this change to how the callgraph is printed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55912 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
d7b9851c4e634ed3599b1a4c70b1c76c90a11686 |
|
08-Sep-2008 |
Duncan Sands <baldrick@free.fr> |
Reapply 55859. This doesn't change anything as long as the callgraph is correct. It checks for wrong callgraphs more strictly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55894 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
fec2c2bf5ea14679f8a2d74a72bdec76f05fa001 |
|
06-Sep-2008 |
Duncan Sands <baldrick@free.fr> |
When PruneEH turned an invoke into an ordinary call (thus changing the call site) it didn't inform the callgraph about this. But the call site does matter - as shown by the testcase, the callgraph become invalid after the inliner ran (with an edge between two functions simply missing), resulting in wrong deductions by GlobalsModRef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55872 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
6e6074508c2f781c3e52dfe0e301cb1c7f395a91 |
|
06-Sep-2008 |
Owen Anderson <resistor@mac.com> |
Revert r55859. This is breaking the build in the abscence of its companion commit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55865 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
c94fe21a56f9e4e5ebbe99252a25636c36392509 |
|
05-Sep-2008 |
Duncan Sands <baldrick@free.fr> |
Delete the removeCallEdgeTo callgraph method, because it does not maintain a correct list of callsites. I discovered (see following commit) that the inliner will create a wrong callgraph if it is fed a callgraph with correct edges but incorrect callsites. These were created by Prune-EH, and while it wasn't done via removeCallEdgeTo, it could have been done via removeCallEdgeTo, which is an accident waiting to happen. Use removeCallEdgeFor instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55859 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.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/CallGraph.cpp
|
227c27dd0628d317fdb71e900809ff7bd39e70d2 |
|
04-Jun-2008 |
Matthijs Kooijman <matthijs@stdin.nl> |
Replace two manual loops with calls to CallSite::hasArguments (no functional changes). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51947 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.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/CallGraph.cpp
|
75caee241955fdcd9942c42be8b77ba9996e94d6 |
|
13-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
add a new CallGraphNode::removeCallEdgeFor method, tidy some comments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49617 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
c758209153ca0f6da6737f25ada269c573fba456 |
|
19-Mar-2008 |
Devang Patel <dpatel@apple.com> |
PassInfo keep tracks whether a pass is an analysis pass or not. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48554 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.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/CallGraph.cpp
|
a3355ffb3d30d19d226bbb75707991c60f236e37 |
|
03-Dec-2007 |
Duncan Sands <baldrick@free.fr> |
Rather than having special rules like "intrinsics cannot throw exceptions", just mark intrinsics with the nounwind attribute. Likewise, mark intrinsics as readnone/readonly and get rid of special aliasing logic (which didn't use anything more than this anyway). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44544 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.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/CallGraph.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/CallGraph.cpp
|
c718288f4939258a51ec5ae0c5be7b1a05eb6898 |
|
02-May-2007 |
Lauro Ramos Venancio <lauro.venancio@gmail.com> |
Fix build error. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36648 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.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/CallGraph.cpp
|
d7d83db5f22d05e5b14b6b1d838668222113c83a |
|
06-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Make classes in anonymous namespaces use VISIBILITY_HIDDEN to help reduce LLVM's footprint and speed up linking. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33941 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
5cbf985dcbc89fba3208e7baf8b6f488b06d3ec9 |
|
30-Jan-2007 |
Reid Spencer <rspencer@reidspencer.com> |
For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoid confusion with external linkage types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33663 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
5c7e326585f3a543388ba871c3425f7664cd9143 |
|
17-Dec-2006 |
Bill Wendling <isanbard@gmail.com> |
Added an automatic cast to "std::ostream*" etc. from OStream. We then can rework the hacks that had us passing OStream in. We pass in std::ostream* instead, check for null, and then dispatch to the correct print() method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32636 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
e81561909d128c6e2d8033cb5465a49b2596b26a |
|
07-Dec-2006 |
Bill Wendling <isanbard@gmail.com> |
Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, are now cerr, cout, and NullStream resp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
f2d9ceb5b9dfbd5e50607bab4a87c1244bda0a71 |
|
05-Dec-2006 |
Chris Lattner <sabre@nondot.org> |
straighten out various memory ownership issues in the callgraph stuff. This fixes Regression/Other/2002-01-31-CallGraph.ll. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32237 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
12d38bfca012f20781db894244ef4a6a1216961f |
|
04-Dec-2006 |
Chris Lattner <sabre@nondot.org> |
Add a comment and fix a memory leak. Thanks to Vikram for pointing this out. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32196 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
68fe61d6a165ea6090008e281330895a21607daf |
|
29-Nov-2006 |
Bill Wendling <isanbard@gmail.com> |
Replacing std::iostreams with llvm iostreams. Some of these changes involve adding a temporary wrapper around the ostream to make it friendly to functions expecting an LLVM stream. This should be fixed in the future. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31990 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
45d10470c972d6b0bc0eff6590bc1fb016c14fd3 |
|
09-Oct-2006 |
Chris Lattner <sabre@nondot.org> |
Fix a bug pointed out by Zhongxing Xu git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30831 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
a5370172b64bed5daf8e2869d7bf7cb52f80d6b7 |
|
28-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
simplify AnalysisGroup registration, eliminating one typeid call. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29932 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
7f8897f22e88271cfa114998a4d6088e7c8e8e11 |
|
28-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
eliminate RegisterOpt. It does the same thing as RegisterPass. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29925 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
d85340f4ec587e22b0239617f3b747a6df113894 |
|
12-Jul-2006 |
Chris Lattner <sabre@nondot.org> |
Change the callgraph representation to store the callsite along with the target CG node. This allows the inliner to properly update the callgraph when using the pruning inliner. The pruning inliner may not copy over all call sites from a callee to a caller, so the edges corresponding to those call sites should not be copied over either. This fixes PR827 and Transforms/Inline/2006-07-12-InlinePruneCGUpdate.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29120 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
4f1bd9e9963239c119db70070db1d68286b3de7e |
|
08-Jun-2006 |
Reid Spencer <rspencer@reidspencer.com> |
For PR780: 1. Fix the macros in IncludeFile.h to put everything in the llvm namespace 2. Replace the previous explicit mechanism in all the .h and .cpp files with the macros in IncludeFile.h This gets us a consistent mechanism throughout LLVM for ensuring linkage. Next step is to make sure its used in enough places. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28715 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
080e25d884d9b9499b3e5330f42847fbb8db8232 |
|
01-Jun-2006 |
Chris Lattner <sabre@nondot.org> |
Fix -pedantic warning git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28634 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
192913e281a0e9b97275fa1b84da96b02397323e |
|
01-Jun-2006 |
Reid Spencer <rspencer@reidspencer.com> |
Change from using a stub function to a stub variable for passing to the IncludeFile hack to ensure linkage of analysis passes. This works around some -pedantic warnings about assigning an object to a function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28621 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
c54b1c1f8b7cf7419b2843d54e9da6c8c15e0dd0 |
|
14-Jan-2006 |
Chris Lattner <sabre@nondot.org> |
Add a new CallGraph::getOrInsertFunction for clients to use when updating the callgraph. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25317 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
1694ec615f71e25de6d07ffc6fe29deed353c657 |
|
14-Jan-2006 |
Chris Lattner <sabre@nondot.org> |
add a dump method to CallGraph git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25314 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
03839956e2b99348812f4c45fb57649804c77c2d |
|
22-Dec-2005 |
Chris Lattner <sabre@nondot.org> |
Separate the call graph implementation from its interface. This implements the rough idea sketched out in http://nondot.org/sabre/LLVMNotes/CallGraphClass.txt, allowing new spiffy implementations of the callgraph interface to be built. Many thanks to Saem Ghani for contributing this! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24944 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.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/CallGraph.cpp
|
3fb2045c7c4884c0f86359320c93c2746b93a1cf |
|
19-Nov-2004 |
Chris Lattner <sabre@nondot.org> |
Mission accomplished! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17990 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.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/CallGraph.cpp
|
fff03c9074ba5ee883b67d422c581f2397779264 |
|
19-Sep-2004 |
Chris Lattner <sabre@nondot.org> |
Fix a nasty iterator invalidation problem I introduced yesterday. This unfortunately is the cause of a bunch of failures from tonight, and the reason the tester is running so slow :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16407 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
cd382a3725e46a41c6dfb923cd1ee295fa0461aa |
|
18-Sep-2004 |
Chris Lattner <sabre@nondot.org> |
Add CallGraphNode::removeAnyCallEdgeTo method git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16398 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
3795bc9785f32e8fc815014a893efd85f2a4776b |
|
18-Sep-2004 |
Chris Lattner <sabre@nondot.org> |
When changing a function, make sure to update the CallGraphNode for the function, not just the CallGraph. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16388 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
6f7e5ebb42706511a310febc926305844bd74cb7 |
|
18-Sep-2004 |
Chris Lattner <sabre@nondot.org> |
Implement new changeFunction method, nuke a never implemented one. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16386 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.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/CallGraph.cpp
|
af8a42445c99d2d733caf1f9ef3e3b53827613d5 |
|
08-Aug-2004 |
Chris Lattner <sabre@nondot.org> |
Add standard print/dump methods to CallGraph classes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15569 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
47b14a4a6a455c7be169cfd312fcbe796f0ad426 |
|
29-Jul-2004 |
Misha Brukman <brukman+llvm@gmail.com> |
Fix #includes of i*.h => Instructions.h as per PR403. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15334 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
e840434755e2165ac20ec55e9d5ff3d2defac2d2 |
|
18-Jul-2004 |
Reid Spencer <rspencer@reidspencer.com> |
bug 122: - 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
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
7b11e339d20edd9ee64efb179390a2054cd456c0 |
|
02-May-2004 |
Chris Lattner <sabre@nondot.org> |
Fix a problem with double freeing memory. For some reason, CallGraph is not acting like a normal pass. :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13318 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
224f7e65e0441c4fab12e41c300b494fa35a1060 |
|
02-May-2004 |
Chris Lattner <sabre@nondot.org> |
Plug a minor memory leak git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13317 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
b81c021f14107b12d1275c84fbce170db06437a5 |
|
12-Apr-2004 |
Chris Lattner <sabre@nondot.org> |
Change the call graph class to have TWO external nodes, making call graph SCC passes much more useful. In particular, this should fix the incredibly stupid missed inlining opportunities that the inliner suffered from. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12860 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.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/CallGraph.cpp
|
ccc4b1a2d38674f2bd6c2263ac9503436bed5f49 |
|
09-Nov-2003 |
Chris Lattner <sabre@nondot.org> |
More additions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9834 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
cda2347bcdf4f5eee1101a06f472538f3d8270e2 |
|
09-Nov-2003 |
Chris Lattner <sabre@nondot.org> |
Add more functions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9826 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
4d728e867acbb54c2d4b70a39296f36dfc56a888 |
|
09-Nov-2003 |
Chris Lattner <sabre@nondot.org> |
None of the __llvm_* functions call into the program. This makes the callgraph MUCH simpler for eh using program. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9825 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
07a38e7b77d29b87bc649b9b4cd73e5dfa84eecf |
|
31-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
Make the call graph more precise despite the hated constantpointerrefs. Do you detect the animosity I feel towards CPRs yet? git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9640 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
14fffaf6c1c6e62897dd8cd0ec90ab196faec764 |
|
30-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
When someone includes CallGraph.h, make sure that they link in CallGraph.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9611 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
b7c4c992be0c0b3d63beb4480cd34f1a0c4eab05 |
|
22-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
This is a disgusting hack that improves code substantially, by making callgraphSCC passes more effective. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9384 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.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/CallGraph.cpp
|
f52d01bbc58c116f7c83f3320a0f2dff9ac1b3d6 |
|
15-Sep-2003 |
Chris Lattner <sabre@nondot.org> |
These two conditions are not exclusive!! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8518 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
b31247a840ffac5d6b0b29c8690855ca678193ea |
|
15-Sep-2003 |
Chris Lattner <sabre@nondot.org> |
Make the print output more useful git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8517 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
5714c974006d4fe28ddd66d15e9b158493df00b6 |
|
31-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Replace M with F when refering to functions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8274 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
16500158223d4147ae97513bf698d5f321b15889 |
|
04-Nov-2002 |
Chris Lattner <sabre@nondot.org> |
Allow the call graph to be called from analyze naturally with print implemented git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4517 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
546b027b3ee0ed3a8c5e551a7e13fc8a1775ede9 |
|
21-Aug-2002 |
Chris Lattner <sabre@nondot.org> |
- Do not expose ::ID from any of the analyses anymore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3417 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
a59cbb2043c08f3cfb8fb379f0d336e21e070be8 |
|
27-Jul-2002 |
Chris Lattner <sabre@nondot.org> |
* Standardize how analysis results/passes as printed with the print() virtual methods * Eliminate AnalysisID: Now it is just a typedef for const PassInfo* * Simplify how AnalysisID's are initialized * Eliminate Analysis/Writer.cpp/.h: incorporate printing functionality into the analyses themselves. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3116 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
1e43516dcf4aa152432447397334cd43744d63e1 |
|
26-Jul-2002 |
Chris Lattner <sabre@nondot.org> |
* Add support for different "PassType's" * Add new RegisterOpt/RegisterAnalysis templates for registering passes that are to show up in opt or analyze * Register Analyses now * Change optimizations to use RegisterOpt instead of RegisterPass * Add support for different "PassType's" * Add new RegisterOpt/RegisterAnalysis templates for registering passes that are to show up in opt or analyze * Register Analyses now * Change optimizations to use RegisterOpt instead of RegisterPass * Remove getPassName implementations from various subclasses git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3112 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
d99d4d7b70b45d25e7dc91c6e7edb9206509ed39 |
|
18-Jul-2002 |
Chris Lattner <sabre@nondot.org> |
* s/method/function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2958 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
7e70829632f82de15db187845666aaca6e04b792 |
|
25-Jun-2002 |
Chris Lattner <sabre@nondot.org> |
MEGAPATCH checkin. For details, See: docs/2002-06-25-MegaPatchInfo.txt git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2779 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
5648b58a194edf3e1a31d266c9f446c52c57150b |
|
10-Apr-2002 |
Chris Lattner <sabre@nondot.org> |
Print out what the root of the call graph is. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2223 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
42a412711c000d175d992dd1b85cfd04fd345e5b |
|
09-Apr-2002 |
Chris Lattner <sabre@nondot.org> |
Add #includes to make up for #includes pruned out of header files. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2207 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
dc89f87d52298131e2265815b65f7aa22388524f |
|
29-Mar-2002 |
Chris Lattner <sabre@nondot.org> |
s/Method/Function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2043 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
e590ff260edbe2e521506a9621c2b936b629a2ea |
|
26-Mar-2002 |
Chris Lattner <sabre@nondot.org> |
change refs to Method to Function Change references to MEthodArgument to FunctionArgument git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1989 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
d4d427baa9ce9bf30e522aa17104c13b8c9b38f3 |
|
06-Mar-2002 |
Chris Lattner <sabre@nondot.org> |
Clean up call graph, add comments, and fix test/Regression/Other/2002-01-31-CallGraph.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1828 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
8d5a16ca0b3d19fdde3d0d453dd16a9c46395345 |
|
06-Mar-2002 |
Chris Lattner <sabre@nondot.org> |
Move call graph printing support out of Writer.h into Callgraph.h remove dead global function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1825 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
4ce0f8aa9ee0038ba741291e2ae1188be75d1d8b |
|
06-Mar-2002 |
Chris Lattner <sabre@nondot.org> |
Take CallGraph out of the CFG namespace. It has nothing to do with CFGs git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1820 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
221d688a5ef21a22c2368c9fff0e92d7966c95e5 |
|
12-Feb-2002 |
Chris Lattner <sabre@nondot.org> |
Method.h no longer includes BasicBlock.h Method::inst_* is now in llvm/Support/InstIterator.h GraphTraits specializations for BasicBlock and Methods are now in llvm/Support/CFG.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1746 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
93193f806378e06092820c099e437886c7309b94 |
|
31-Jan-2002 |
Chris Lattner <sabre@nondot.org> |
Convert analyses to new pass structure git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1603 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
697954c15da58bd8b186dbafdedd8b06db770201 |
|
20-Jan-2002 |
Chris Lattner <sabre@nondot.org> |
Changes to build successfully with GCC 3.02 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1503 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
7a1767520611d9ff6face702068de858e1cadf2c |
|
04-Dec-2001 |
Chris Lattner <sabre@nondot.org> |
Renamed inst_const_iterator -> const_inst_iterator Renamed op_const_iterator -> const_op_iterator Renamed PointerType::getValueType() -> PointerType::getElementType() git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1408 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
cee8f9ae67104576b2028125b56e9ba4856a1d66 |
|
27-Nov-2001 |
Chris Lattner <sabre@nondot.org> |
Create a new #include "Support/..." directory structure to move things from "llvm/Support/..." that are not llvm dependant. Move files and fix #includes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1400 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
25e9cad236c5ebb0f96f2c213c294616a1d04155 |
|
26-Nov-2001 |
Chris Lattner <sabre@nondot.org> |
Implement a new entry node that has edges to all external methods in the module git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1369 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
a7edb1888ce8050ba05bcb7743f6a76b6e564741 |
|
22-Oct-2001 |
Vikram S. Adve <vadve@cs.uiuc.edu> |
Added function IsLeafMethod to identify leaf methods. This will use the CallGraph only if one is provided. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@950 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
9f9e2befd0d6366f1a2ebd082a1a6d703da21103 |
|
13-Oct-2001 |
Chris Lattner <sabre@nondot.org> |
* Add support for Invoke instructions * Add support for indirect calls git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@752 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
b00c582b6d40e6b9ff2d1ed4f5eaf7930e792ace |
|
02-Oct-2001 |
Chris Lattner <sabre@nondot.org> |
Commit more code over to new cast style git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@697 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|
41fbf305ee3e2c3b8610459e8c09b60e61f4d34d |
|
28-Sep-2001 |
Chris Lattner <sabre@nondot.org> |
Initial support for construction of a call graph git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@660 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Analysis/IPA/CallGraph.cpp
|