d5118c8f78a05ad0b426b6032138d1d934b77c8d |
|
17-Aug-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Assert that dominates is not given a multiple edge. Finding out if we have multiple edges between two blocks is linear. If the caller is iterating all edges leaving a BB that would be a square time algorithm. It is more efficient to have the callers handle that case. Currently the only callers are: * GVN: already avoids the multiple edge case. * Verifier: could only hit this assert when looking at an invalid invoke. Since it already rejects the invoke, just avoid computing the dominance for it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162113 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
05130597262f3ed00dc4881d64795d117c76e3fc |
|
16-Aug-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Teach GVN to reason about edges dominating uses. This allows it to handle cases where some fact lake a=b dominates a use in a phi, but doesn't dominate the basic block itself. This feature could also be implemented by splitting critical edges, but at least with the current algorithm reasoning about the dominance directly is faster. The time for running "opt -O2" in the testcase in pr10584 is 1.003 times slower and on gcc as a single file it is 1.0007 times faster. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162023 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
25ac7518ffda5f4256e8333dde4801270bb26418 |
|
10-Aug-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Move BasicBlockEdge to the cpp file. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161663 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
702bcce747cd3fd89049b16d37c9c88952b5af81 |
|
07-Aug-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
The dominance computation already has logic for computing if an edge dominates a use or a BB, but it is inline in the handling of the invoke instruction. This patch refactors it so that it can be used in other cases. For example, in define i32 @f(i32 %x) { bb0: %cmp = icmp eq i32 %x, 0 br i1 %cmp, label %bb2, label %bb1 bb1: br label %bb2 bb2: %cond = phi i32 [ %x, %bb0 ], [ 0, %bb1 ] %foo = add i32 %cond, %x ret i32 %foo } GVN should be able to replace %x with 0 in any use that is dominated by the true edge out of bb0. In the above example the only such use is the one in the phi. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161429 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
0120f7913fc7eee98ac16052e02466c1c50abd9b |
|
13-Apr-2012 |
Dan Gohman <gohman@apple.com> |
Def here is an Instruction, so !isa<Instruction>(Def) is always false, as Eli noticed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154641 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
558ece284cef9d42a96577f3943cb3efee8904e0 |
|
13-Apr-2012 |
Dan Gohman <gohman@apple.com> |
Add forms of dominates and isReachableFromEntry that accept a Use directly instead of a user Instruction. This allows them to test whether a def dominates a particular operand if the user instruction is a PHI. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154631 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
092c5ccf5bdcaa53151645e5628cec77fcf4062b |
|
30-Mar-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Handle unreachable code in the dominates functions. This changes users when needed for correctness, but still doesn't clean up code that now unnecessary checks for reachability. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153755 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
c9ae8cc24c70dda33b68cacf01d2feeeb836f6f2 |
|
26-Feb-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Change the implementation of dominates(inst, inst) to one based on what the verifier does. This correctly handles invoke. Thanks to Duncan, Andrew and Chris for the comments. Thanks to Joerg for the early testing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151469 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
b155c23f98e45bf5a1f5e6329b46e8138dfef9ce |
|
18-Feb-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
White space fixes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150886 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
0f4158790916352a52f105dbfb638c9a0db00321 |
|
29-Mar-2011 |
Bill Wendling <isanbard@gmail.com> |
Spruce up the error output. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128451 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
a9ba456b7cfc0d202acdb22aa2ddfdc00aa0d63e |
|
20-Jan-2011 |
Cameron Zwarich <zwarich@apple.com> |
Update a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123879 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
f889b3bd6c50b6fe43dbb317e004b65d00aa03b6 |
|
18-Jan-2011 |
Cameron Zwarich <zwarich@apple.com> |
Remove an unnecessary #include. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123748 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
4676599e30da78d39d5fe8649a0e5dcb2b6b1372 |
|
18-Jan-2011 |
Cameron Zwarich <zwarich@apple.com> |
Move DominanceFrontier from VMCore to Analysis. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123747 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
5d2cf40c40d8c2763a0e5b53481063becdce6e30 |
|
18-Jan-2011 |
Cameron Zwarich <zwarich@apple.com> |
There is no point in verifying an analysis that is never updated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123743 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
72d1695f12b29dddac431f18e2592a8eeaf3796a |
|
18-Jan-2011 |
Cameron Zwarich <zwarich@apple.com> |
Remove some now-unused DominanceFrontier methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123726 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
57863b8ee0d3adaaed60344bd6c63bace0436d60 |
|
08-Jan-2011 |
Chris Lattner <sabre@nondot.org> |
make domtree verification print something useful on failure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123078 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
9fc5cdf77c812aaa80419036de27576d45894d0d |
|
02-Jan-2011 |
Chris Lattner <sabre@nondot.org> |
split dom frontier handling stuff out to its own DominanceFrontier header, so that Dominators.h is *just* domtree. Also prune #includes a bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122714 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
2ab36d350293c77fc8941ce1023e4899df7e3a82 |
|
12-Oct-2010 |
Owen Anderson <resistor@mac.com> |
Begin adding static dependence information to passes, which will allow us to perform initialization without static constructors AND without explicit initialization by the client. For the moment, passes are required to initialize both their (potential) dependencies and any passes they preserve. I hope to be able to relax the latter requirement in the future. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116334 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.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/VMCore/Dominators.cpp
|
b08ba8824e0e8bf1d4a68594c5efb65bf640ecc1 |
|
26-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Fix (at least) quadratic worst-case complexity in DominanceFrontier::splitBlock: don't visit all blocks in the function, and don't iterate over the split blocks' predecessor lists for each block visited. Also, remove the special-case test for the entry block. Splitting the entry block isn't common enough to make this worthwhile. This fixes a major compile-time bottleneck which is exposed now that LoopSimplify isn't being redundantly run both before and after DominanceFrontier. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109408 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
d2d975233d3f56a0aec3ee3965c1cdb7a6ba1dbd |
|
26-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Avoid copying and recopying a std::set. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109405 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
e96a6fe351b0cf8da5dc7eaddd44618bbdd25fd3 |
|
26-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Exit a search loop when the search goal is found. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109404 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
1deeaa6467feec957a987af4da1d9b63831628ba |
|
26-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Fix formatting. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109403 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
d13db2c59cc94162d6cf0a04187d408bfef6d4a7 |
|
22-Jul-2010 |
Owen Anderson <resistor@mac.com> |
Fix batch of converting RegisterPass<> to INTIALIZE_PASS(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109045 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
74c740052a143027bbc2d14594d6188e2e597fa1 |
|
16-Jul-2010 |
Tobias Grosser <grosser@fim.uni-passau.de> |
LoopSimplify does not update domfrontier correctly. This fixes PR7649. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108513 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
9a7b37b8a35e60494cde8b2bb6b6cab587836c7a |
|
16-Jul-2010 |
Tobias Grosser <grosser@fim.uni-passau.de> |
Add dump() to DominanceFrontier git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108512 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
b35798347ea87b8b6d36155b211016a7769f01ab |
|
15-Apr-2010 |
Dan Gohman <gohman@apple.com> |
Fix a bunch of namespace polution. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101376 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
2c8a9f8ad99f9d3777ea82bb44f8bbf6c983642c |
|
10-Apr-2010 |
Dan Gohman <gohman@apple.com> |
Fix a typo and some indentation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100908 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
c63ca0a71b299ee0b8fc7dc8405d7f3c856ecfa3 |
|
19-Dec-2009 |
John McCall <rjmccall@apple.com> |
Qualify a bunch of explicit template instantiations to satisfy clang++. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91736 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
dc4a745ffe4732c24cd854305f119f142b7daf71 |
|
24-Oct-2009 |
Dan Gohman <gohman@apple.com> |
Make DominanceFrontierBase::print's output prettier. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85011 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
a9245d63f64dc8af8ddd877b94523fcc52c1d702 |
|
28-Sep-2009 |
Dan Gohman <gohman@apple.com> |
Remove temporary debugging hack. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82953 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
9450b0e1a6154192ca597ad27f8eb6e6e807f7a4 |
|
28-Sep-2009 |
Dan Gohman <gohman@apple.com> |
Move the dominator verification code out of special code embedded within the PassManager code into a regular verifyAnalysis method. Also, reorganize loop verification. Make the LoopPass infrastructure call verifyLoop as needed instead of having LoopInfo::verifyAnalysis check every loop in the function after each looop pass. Add a new command-line argument, -verify-loop-info, to enable the expensive full checking. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82952 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
850c9178dc5bc8a49fc41c7cf606bfdd7cd1de3a |
|
22-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
Fix PR5023: The instruction form of DominatorTree::dominates did not take into consideration that the result of an invoke is only valid in the normal dest, not the unwind dest. This caused 'PHINode::hasConstantValue' to return true in an invalid situation, causing mem2reg to delete a phi that was actually needed. This caused a crash building 483.xalancbmk. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82491 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
75c7c995b7ed5a5b7527a80d2bbc2b60720b1312 |
|
22-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
move DominatorTree::dominates for instructions out of line, no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82490 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.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/VMCore/Dominators.cpp
|
791102fb1192ac9483274e54cbc42480c9b1af10 |
|
23-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
eliminate the std::ostream form of WriteAsOperand and update clients. This also updates dominator related stuff. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79825 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
20e8d5a8cc36c9e39cae1dd99527a4ac0a9d770f |
|
15-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
switch DominanceFrontier::splitBlock to use a smallvector for the pred list instead of a vector, saving a boat load of malloc/free's. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79062 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
0f4012ca9d0e7a6dba7862201d8267681c0e43b0 |
|
21-May-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Fix some incorrect logic in DominanceFrontier::splitBlock. Part of PR4238. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72223 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
687e03b2fa6b08fcd59c4f2f0c4aababdd91a71a |
|
30-Jun-2008 |
Devang Patel <dpatel@apple.com> |
Move dominator info printer into tool/opt/GraphPrinters.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52907 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
42af887105c37fb1dba3e197d70d16a34a0bc06f |
|
27-Jun-2008 |
Devang Patel <dpatel@apple.com> |
Add dominator info printer pass. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52829 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
2527e884169eee65f790a16b81daca2d5652eb6d |
|
14-May-2008 |
Devang Patel <dpatel@apple.com> |
Dominance Frontier is cfg only pass. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51075 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
ea705199af871a7541ac0114d62f1b83c40f0f1e |
|
21-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
don't print dominators every time it is computed with -debug. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50032 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
1f23e163190f85e46f2009bf43ee4fe8299044e4 |
|
16-Apr-2008 |
Owen Anderson <resistor@mac.com> |
Major repairs to the post-dominators implementation. Patch from Florian Brandner! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49768 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
9f83512ce80279aa5ff243d4285283438360d015 |
|
21-Mar-2008 |
Devang Patel <dpatel@apple.com> |
These passes preserve CFG. This patch fixes Benchmarks/Trimaran/enc-pc1/enc-pc1 failure reported by Grawp-PIC i386 nightly tester git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48623 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
4f4c28f75f74fe557efb63feaf5f4f8bf639dcd5 |
|
20-Mar-2008 |
Devang Patel <dpatel@apple.com> |
Restore isCFGOnly property of various analysis passes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48579 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.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/VMCore/Dominators.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/VMCore/Dominators.cpp
|
d20cc14dbf6d54d896e67b9920cd9bccdc14c41a |
|
23-Oct-2007 |
Owen Anderson <resistor@mac.com> |
Make DomTree and PostDomTree thin wrappers around DomTreeBase, rather than inheriting from it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43259 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
05d2318fbde7b603bd6de690f18d48e0ef44d81d |
|
17-Oct-2007 |
Owen Anderson <resistor@mac.com> |
Move splitBlock into DomTreeBase from DomTree. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43059 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
49b653aa6aaaed17be1c611c5722b5b9ff31a905 |
|
16-Oct-2007 |
Owen Anderson <resistor@mac.com> |
Template DominatorTreeBase by node type. This is the next major step towards having dominator information on MBB's. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43036 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
1aad74c9e8aba2ad0493620d35966ee3964c1ecb |
|
08-Oct-2007 |
Owen Anderson <resistor@mac.com> |
Begin the process of allowing DomTree on MBB's. Step One: template DomTreeNode by making it a typedef of a templated DomTreeNodeBase. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42743 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
5c4cd0d82e22a50e95a1acffa3364e4f7658ab32 |
|
06-Oct-2007 |
Devang Patel <dpatel@apple.com> |
Fix bug in updating dominance frontier after loop unswitch when frontier includes basic blocks that are not inside loop. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42654 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
9cb7f49ee9d8c77f5ae82e36befde2b3094fdd02 |
|
03-Oct-2007 |
Owen Anderson <resistor@mac.com> |
Completely merge the implementation details of DomTree and PostDomTree. Also, add a FIXME for a bug in PostDomTree calculation I noticed while writing this, git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42593 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
471ab54df756f2f48c9146ad897672662c3f25f9 |
|
03-Oct-2007 |
Owen Anderson <resistor@mac.com> |
Factor some code from the DomTree and PostDomTree calculate methods up into each one's runOnFunction method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42563 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
58ec8825d46085841a1af55ee7f8117ad25ecf2f |
|
28-Sep-2007 |
Owen Anderson <resistor@mac.com> |
Convert DFSPass into a templated friend function, in preparation for making it common to DomTree and PostDomTree. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42420 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
eefb31094f2481815884afba0076eadbf89045f1 |
|
24-Sep-2007 |
Owen Anderson <resistor@mac.com> |
Move DFSPass back down into DominatorTree. I need to figure out what the difference is between it and the PostDomTree version first. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42250 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
d20c824b201b1408d7ea7a4e2d601aee14db5cec |
|
23-Sep-2007 |
Owen Anderson <resistor@mac.com> |
Factor the dominator tree calculation details out into DominatorCalculation.h. This change is not useful in and of itself, but it lays the groundwork for combining the dominator and postdominator implementations. Also, factor a few methods that are common to DominatorTree and PostDominatorTree into DominatorTreeBase. Again, this will make merging the two calculation methods simpler in the future. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42248 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
6d6403c2876ac87b8e51c166e0da8338bfe011f5 |
|
14-Aug-2007 |
Devang Patel <dpatel@apple.com> |
Assert sooner. Fix wordings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41075 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
441c5ee6cfd4fdec78d7d86536610b2e72519450 |
|
14-Aug-2007 |
Devang Patel <dpatel@apple.com> |
Add methods to erase basic block entry. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41052 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
de0e42d3c07466677dab4b3bbc379302e383083b |
|
08-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
Speed up updateDFSNumbers with two observations: 1. domtree is a tree, not a graph. There is no need to avoid revisiting nodes with a set. 2. the worklist can contain the child iterator pointers so we don't get N^2 rescanning of children. This speeds up updateDFSNumbers significantly, making it basically free. On the testcase in PR1432, this speeds up loopsimplify by another 3x, dropping it from the 12th most expensive pass to the to the 30th. :) It used to be #1. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40923 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
3e089ae0b8aa6d9daf0b8ca8f6059422c45936f0 |
|
08-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
reimplement dfs number computation to be significantly faster. This speeds up natural loop canonicalization (which does many cfg xforms) by 4.3x, for example. This also fixes a bug in postdom dfnumber computation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40920 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
7ed54a0ece41faeaac4eec1a1e39789a64c1876e |
|
06-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
1. Random tidiness cleanups 2. Make domtree printing print dfin/dfout #'s 3. Fix the Transforms/LoopSimplify/2004-04-13-LoopSimplifyUpdateDomFrontier.ll failure from last night (in DominanceFrontier::splitBlock). w.r.t. #3, my patches last night happened to expose the bug, but this has been broken since Owen's r35839 patch to LoopSimplify. The code was subsequently moved over from LoopSimplify into Dominators, carrying the latent bug. Fun stuff. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40858 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
a31965301da89a7d0c829bded72c6b0da0303c54 |
|
05-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
Fix an iterator invalidation bug I induced. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40830 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
2f0d1ea864ff0fe59c5a2b35390a82fad2865b61 |
|
05-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
Switch some std::sets to SmallPtrSet. This speeds up domtree by 10% and postdomtree by 17% git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40829 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
7ae8c4c810935625bcdbdf832a33ef4032bad906 |
|
05-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
Switch DomTreeNode::assignDFSNumber from using a std::set to using a smallptrset. This speeds up domtree by about 15% and postdomtree by 20%. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40828 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
e93e31198109b03b8c22296a1500839e95d59b5f |
|
05-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
Switch the internal "Info" map from an std::map to a DenseMap. This speeds up idom by about 45% and postidom by about 33%. Some extra precautions must be taken not to invalidate densemap iterators. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40827 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
0a5f83c22cc5d1fe24e57aadde9399fa90eb5c98 |
|
05-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
switch the DomTreeNodes and IDoms maps in idom/postidom to a DenseMap instead of an std::map. This speeds up postdomtree by about 25% and domtree by about 23%. It also speeds up clients, for example, domfrontier by 11%, mem2reg by 4% and ADCE by 6%. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40826 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
1ff61385c8feb655a1e70cc67999680cc93f0f67 |
|
02-Aug-2007 |
Devang Patel <dpatel@apple.com> |
Update dominator info for the middle blocks created while spliting exit edge to preserve LCSSA. Fix dominance frontier update during loop unswitch. This fixes PR 1589, again git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40737 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
2f2e519083d8ac06f4e0a980b43fa78a3aa727f4 |
|
02-Aug-2007 |
Devang Patel <dpatel@apple.com> |
Undo previous check-in. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40698 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
28ae151c48df634b4df5b3630a9a65021574fb4c |
|
02-Aug-2007 |
Devang Patel <dpatel@apple.com> |
Update dominator info for the middle blocks created while spliting exit edge to preserve LCSSA. Fix dominance frontier update during loop unswitch. This fixes PR 1589. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
c61ce1ad091ad1faaca8d73447f53d43020ddffa |
|
27-Jul-2007 |
Devang Patel <dpatel@apple.com> |
Fix edge cases in handling basic block split. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40564 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
1ceda1d63ed128b34c332c81890f314ce2e5373d |
|
27-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Remove ETForest. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37765 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
0e7f728ad1ac25b0ed450fe0f8b86a38d3c2a93a |
|
21-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Move code to update dominator information after basic block is split from LoopSimplify.cpp to Dominator.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37689 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
d75405fe95660877f62064211e252c8c8c4c05ea |
|
12-Jun-2007 |
Devang Patel <dpatel@apple.com> |
isReachableFromEntry() is not suitable for post dominator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37562 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
de6e1320550bf3a6eb249155fcd14e9a0d84488e |
|
12-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Remove redundant check. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37561 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
5fd306bf0d75b8dde7e2ff5e42e15e96d5cdfcfe |
|
12-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Check A dominates B and vise versa first while searching for nearest common dominator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37559 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
4d42dea25397f2f822a93edfe9930b36ea85a7e7 |
|
12-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Break DominatorTree from ETNode. Remove unused PostETForest. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37551 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
bdfa1f837cc760da560595b279c171cba8a75781 |
|
12-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Use SmallPtrSet instaed of std::set git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37548 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
87f05a24160805b13bd68f1908589a193497f157 |
|
12-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Check immediate dominators first while searching for nearset common dominator. Fix 80 col violations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37547 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
3726b82a55a1864c2f9af86beaaeb2e1f3fbc99b |
|
12-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Maintain DFS number in DomTreeNode itself. This means now ETNodes are not useful anymore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37546 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
fe7d4e50b8a34e660a8713da79613041987c19d6 |
|
12-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Add and use DominatorTreeBase::findNearestCommonDominator(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37545 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
dba2413b2ecf4e781f457036a2eb0f103192e90d |
|
08-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Update LoopSimplify to require and preserve DominatorTree only. Now LoopSimplify does not require nor preserve ETForest. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37512 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
e029b2c36907a77c895e4d646c0e91f18a6dd162 |
|
08-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Add instruction level dominates(A,B) interface. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37504 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
9a51157db555395f7a6ad89faec40b3afa121091 |
|
07-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Maintain ETNode as part of DomTreeNode. This adds redundancy for now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37492 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
7d832fe6c1a15c5d0ae65d5c71fd7dcec12c551e |
|
06-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Add new dominator tree node into dominator tree node map. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37475 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
055756bf52af37a4930c6023416537aad844e598 |
|
04-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Add FIXMEs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37417 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
26042420d642e810f5cdfb2da6156b74aaf80945 |
|
04-Jun-2007 |
Devang Patel <dpatel@apple.com> |
s/llvm::DominatorTreeBase::DomTreeNode/llvm::DomTreeNode/g git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37407 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
bec7647f985d54d2be2100e3813b85267cf1fe49 |
|
03-Jun-2007 |
Devang Patel <dpatel@apple.com> |
s/DominatorTreeBase::Node/DominatorTreeBase:DomTreeNode/g git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37403 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
79b48b8bc07170656e7e2d7500f7fcbf69ccc923 |
|
23-May-2007 |
Devang Patel <dpatel@apple.com> |
Add dump() routines for debugging assistance. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37314 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
99c282453af9353ab1be42604414e8f4de338477 |
|
03-May-2007 |
Devang Patel <dpatel@apple.com> |
Use iterative while loop instead of recursive function call. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36694 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.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/VMCore/Dominators.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/VMCore/Dominators.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/VMCore/Dominators.cpp
|
3831c553e33c100b84be8fa95228c315ac4fdc30 |
|
21-Apr-2007 |
Devang Patel <dpatel@apple.com> |
Reset vertex. Fix http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070416/048092.html git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36294 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
e934fefd6b6c83816e81bc86389cd593fb930773 |
|
16-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Tabs -> Spaces git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36094 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
3dc6776b338f81e2d47daa42cc12c9f91053043d |
|
15-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Remove ImmediateDominator analysis. The same information can be obtained from DomTree. A lot of code for constructing ImmediateDominator is now folded into DomTree construction. This is part of the ongoing work for PR217. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36063 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
9a341ff3c1cf54af7bda18726a0a30f3de4fa353 |
|
15-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Fix some unsafe code. Also, tabs -> spaces. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36035 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
690c684fc60883171c01da12d826fda6b5678aa8 |
|
15-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Make ETForest depend on DomTree rather than IDom. This is the first step in the long process that will be fixing PR 217. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36034 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
a9f120bd9f208f8e7ed03c02cc63b2f487edb84f |
|
09-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
Convert ImmediateDominators::DFSPass from being recursive to being iterative. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35815 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
8645fb95243d0c5b23aa10c48226c84c7fc20f17 |
|
09-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
minor cleanups git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35807 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
8ea325730c6b914350008f1d8160345bfc4781d6 |
|
09-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Move isReachableFromEntry out of line to avoid an unnecessary #include git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35797 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
cd4abb7e6da68510be8a843013fe15176f91ec49 |
|
08-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Remove DomSet completely. This concludes work on PR1171. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35775 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
51bc779096f88ef52a12eaf07d6d1df5266007ca |
|
08-Apr-2007 |
Nick Lewycky <nicholas@mxc.ca> |
Don't crash when encountering a BasicBlock that hasn't been registered yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35756 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
e9ed4452bce4f5a7f8005d7ebd649a20c22ef268 |
|
07-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Add DomSet back, and revert the changes to LoopSimplify. Apparently the ETForest updating mechanisms don't work as I thought they did. These changes will be reapplied once the issue is worked out. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35741 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
ba43963e96c9eb28d4f6862e46c5d3fbdc1f3b96 |
|
07-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Completely purge DomSet. This is the (hopefully) final patch for PR1171. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35731 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
9dea3a340a8e3db7eab92ea78c20e317ac4c2545 |
|
28-Mar-2007 |
Devang Patel <dpatel@apple.com> |
It is not possible to determine dominance between two PHI nodes based on their ordering. This is applicable to ETForest::dominates() also. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35423 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
2ad28e6c486f91d83b2d5bcd30612049a686ad64 |
|
27-Mar-2007 |
Devang Patel <dpatel@apple.com> |
Use SmallPtrSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35388 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
40d2cd13a59f66581773e235ca6fbe383f6e68ac |
|
27-Mar-2007 |
Devang Patel <dpatel@apple.com> |
Spell check. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35374 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
b9dbc4deccefc062a29bce49dc60bf9d5627e603 |
|
27-Mar-2007 |
Devang Patel <dpatel@apple.com> |
It is not possible to determie dominance between two PHI nodes based on their ordering. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35369 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
9be98dd9c01e41c126fa3da0d794bdbeb5665c11 |
|
27-Mar-2007 |
Devang Patel <dpatel@apple.com> |
Use std::vector<DFCalculateWorkObject> instead of std::vector<DFCalculateWorkObject *> to reduce malloc/free traffic. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35368 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
cbdfb8a9d5e9159f8bbd9b20c9b979e45a4d943c |
|
20-Mar-2007 |
Devang Patel <dpatel@apple.com> |
DominanceFrontier::calculate(). Avoid recursion, Use iterative algorithm. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35225 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
3b57b6f36e906d69cc578f3e2f72dcd263a72a30 |
|
20-Mar-2007 |
Devang Patel <dpatel@apple.com> |
LoopSimplify::FindPHIToPartitionLoops() Use ETForest instead of DominatorSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35221 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
2e3def1177c462e14b20ddad71adf5c6b7c3e867 |
|
17-Nov-2006 |
Bill Wendling <isanbard@gmail.com> |
Removed iostream #includes. Replaced std::cerr with DOUT. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31814 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
b71f6728eb4b3f0646da350d87eefc83ea35cf24 |
|
22-Sep-2006 |
Devang Patel <dpatel@apple.com> |
remove extra white spaces. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30576 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
8d3ab25335d985665cbf69231811da9e58e27592 |
|
22-Sep-2006 |
Devang Patel <dpatel@apple.com> |
Use iterative algorith to assign DFS number. This reduces call stack depth. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30575 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
697e5905805634b343be39391c403c38d2e64999 |
|
14-Sep-2006 |
Devang Patel <dpatel@apple.com> |
Undo previous check-in. Reintroduce recursive assignDFSNumber(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30380 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
57d12f962d5af0c23283e0a129b95b106a517e46 |
|
14-Sep-2006 |
Devang Patel <dpatel@apple.com> |
Avoid recursion in assignDFSNumber(). Move def from ET-Forest.h to Dominators.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30309 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
5d8925c7c506a54ebdfb0bc93437ec9f602eaaa0 |
|
28-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
Eliminate RegisterAnalysis. RegisterPass now does all that is necessary. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29921 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
6aba48338f67f08637b05f38005059f27aaf69bf |
|
02-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
Add dominates/properlyDominates queries to IDom. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29456 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.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/VMCore/Dominators.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/VMCore/Dominators.cpp
|
bb636274d41596eac607368e4545c5d67e14816a |
|
14-Mar-2006 |
Chris Lattner <sabre@nondot.org> |
Fix an et-forest memory leak. Patch by Daniel Berlin. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26763 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
25abb1dc094a08a3ba5cb426698b4780cbe438bb |
|
14-Jan-2006 |
Chris Lattner <sabre@nondot.org> |
Change ET-Forest to automatically recalculate its DFSnum's if too many slow queries are made. Patch by Daniel Berlin! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25323 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
6b135b74bd611086a2b7ec1da4ab82c18483f993 |
|
09-Jan-2006 |
Chris Lattner <sabre@nondot.org> |
Bugfix for etforest updating. Contributed by Daniel Berlin. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25152 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
ccacd3ccc2a4a2336085a1d8d58cedb947b2eb52 |
|
08-Jan-2006 |
Chris Lattner <sabre@nondot.org> |
Initial implementation of the ET-Forest data structure for dominators and post-dominators. This code was written/adapted by Daniel Berlin! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25144 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
3e317534c7fd5ddbb340770926961c800f3d11c3 |
|
26-Dec-2005 |
Duraid Madina <duraid@octopus.com.au> |
more HP-UX cleanliness git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25015 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
a1fecc9c26a16859cd20b01758f852a868d41355 |
|
18-Nov-2005 |
Chris Lattner <sabre@nondot.org> |
This requires proper dominance git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24408 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
91bd25d9dfe050ec0cc549f2f5d2e83f91739732 |
|
25-Apr-2005 |
Chris Lattner <sabre@nondot.org> |
Make dominates(A,B) work with post dominators. Patch contributed by Naveen Neelakantam, thanks! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21543 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
9d80930e950214d026afd3a3d18cda32629efdb9 |
|
23-Apr-2005 |
Jeff Cohen <jeffc@jolt-lang.org> |
Eliminate tabs and trailing spaces git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21480 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
fd93908ae8b9684fe71c239e3c6cfe13ff6a2663 |
|
22-Apr-2005 |
Misha Brukman <brukman+llvm@gmail.com> |
Remove trailing whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21427 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
ce9653ce449f1409815547e1bf60abcd1332d2c9 |
|
07-Dec-2004 |
Reid Spencer <rspencer@reidspencer.com> |
For PR387:\ Make only one print method to avoid overloaded virtual warnings when \ compiled with -Woverloaded-virtual git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18589 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
a06b3af2feb4c8a9f717af24243cf51cb7ad97ee |
|
14-Oct-2004 |
Chris Lattner <sabre@nondot.org> |
Make sure any client of Dominators.h links in Dominators.cpp Patch by Morten Ofstad git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16987 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.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/VMCore/Dominators.cpp
|
fab8596459305f8017ccf92131e76c65dd2f6a94 |
|
19-Jun-2004 |
Chris Lattner <sabre@nondot.org> |
compute dominator tree children in a deterministic order that does not depend on the address of BasicBlock objects in memory. This eliminates stuff like this: Inorder Dominator Tree: [1] %entry [2] %loopentry - [3] %loopexit [3] %no_exit - [4] %endif [4] %then + [4] %endif + [3] %loopexit [3] %return git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14253 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
f6437a3023c704e9cb4488b2fb58494a81e2a259 |
|
19-Jun-2004 |
Chris Lattner <sabre@nondot.org> |
Print out immediate dominators in program order, not in random order based on the address of BasicBlock objects git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14252 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
8e72749fc0b44ac8b7a5ffbb275f2ad60f2fa41e |
|
05-Jun-2004 |
Chris Lattner <sabre@nondot.org> |
Add missing #include git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14037 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
eae45cf44bd1b9ddbb69865f1d46689e57e03417 |
|
07-Dec-2003 |
Chris Lattner <sabre@nondot.org> |
The recalclulate method was a nasty hack that was once used by the -cee pass, which never worked itself. The cee pass still doesn't work, but it doesn't use this method anymore anyway, so eliminate the method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10302 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
16addf87bf331645de63575aa15627c74b9cab66 |
|
07-Dec-2003 |
Chris Lattner <sabre@nondot.org> |
Completely rewrite domset, idom, and domtree implementation. Now it is based on the algorithm for directly computing immediate dominators presented in this paper: A Fast Algorithm for Finding Dominators in a Flowgraph T. Lengauer & R. Tarjan, ACM TOPLAS July 1979, pgs 121-141. This _substantially_ speeds up construction of all dominator related information. Post-dominators to follow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10301 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
31f8499e83dc4dccbb57ea7e76d1fd49b7010d0c |
|
21-Nov-2003 |
Chris Lattner <sabre@nondot.org> |
Finegrainify namespacification git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10131 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.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/VMCore/Dominators.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/VMCore/Dominators.cpp
|
02a3be020a6b4eedb4b489959997d23a22cdf22e |
|
20-Sep-2003 |
Chris Lattner <sabre@nondot.org> |
Rename Function::getEntryNode -> getEntryBlock git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8625 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
c444a4228f31656f854d15eac671b450df557346 |
|
11-Sep-2003 |
Chris Lattner <sabre@nondot.org> |
Renamed DominatorTree::Node::getNode() -> getBlock() git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8469 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
b884f597d62e8596df0b3856e9ca1b2496f81361 |
|
10-Sep-2003 |
Chris Lattner <sabre@nondot.org> |
Rework dominator interfaces to handle changes in the post-dominance construction. Now there may be multiple root blocks, and null is a special node used to mark the "virtual" exit node of a CFG. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8461 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
24f83a15dd50b923fe674a55c5f11d91f383bb01 |
|
19-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Do not even attempt to compute dominator information for unreachable blocks git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7963 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
5560c9d49ccae132cabf1155f18aa0480dce3eda |
|
18-Aug-2003 |
Misha Brukman <brukman+llvm@gmail.com> |
Spell `necessary' correctly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7944 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
e3d3219f769cd35be19589f9958471c8848d9f12 |
|
22-May-2003 |
Chris Lattner <sabre@nondot.org> |
Remove using declarations and extraneous #includes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6303 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
a3c58f1c060bb97371ad06bf10c4836845e0f5a3 |
|
13-May-2003 |
Chris Lattner <sabre@nondot.org> |
Fix bug: Dominators/2003-05-12-UnreachableCode.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6158 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
7ca266fe1f211afaec0bdb3b8d8e8a98d2c78fbc |
|
08-Oct-2002 |
Chris Lattner <sabre@nondot.org> |
Expose new "recalculate" method from dominatorset git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4074 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
4e4caeffbdf3da85b980386131f6fd364a981153 |
|
04-Oct-2002 |
Chris Lattner <sabre@nondot.org> |
Fix a nasty problem with dominance calculation for unreachable blocks. If we had a CFG that look like Entry -> B, Unreachable -> B, then we would not correctly determine that Entry dominated B, because Entry did not apparently dominate "unreachable". This patch fixes this by making the entry node dominate all blocks, including unreachable ones. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4037 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
4d7a75a9e31a1b45e68b9cd3f50f18bd90dd0850 |
|
29-Sep-2002 |
Chris Lattner <sabre@nondot.org> |
Improve printing of dominator sets git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3976 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
d74472ed21b1ff6d75c8ae2f4f2885e019d0907d |
|
26-Sep-2002 |
Chris Lattner <sabre@nondot.org> |
- Add methods to ImmediateDominators & DominatorTree to allow updates - Make DominatorTree::Node not inherit from std::vector git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3939 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
80b7f8ceb4ea78276f69fe2ae6dfb172f4895165 |
|
22-Aug-2002 |
Chris Lattner <sabre@nondot.org> |
Fix bug: test/Regression/Assembler/2002-08-22-DominanceProblem.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3474 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
607ace696b17036a7f23e4c1936b7ed2e87d3647 |
|
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@3415 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
9ce231f3aecec46902ac9a108c5721a4d9c62a61 |
|
02-Aug-2002 |
Chris Lattner <sabre@nondot.org> |
Implement dominator checking in the verifier, so that we check that all defintiions dominate their uses git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3214 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
a915ef0fc085d914df69d531c0438d2c330df5de |
|
02-Aug-2002 |
Chris Lattner <sabre@nondot.org> |
Fix bug: test/Regression/Other/2002-08-02-DomSetProblem.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3213 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
4c9df7c619ba827729490757dae6dc35bb068a9f |
|
02-Aug-2002 |
Chris Lattner <sabre@nondot.org> |
Split dominance calculation and post dominance calculation stuff Dominance calculation goes to VMCore library to be used by Verifier. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3210 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
1b0a63fa6450fdf60ae79969ae55fd001cb3b5b3 |
|
31-Jul-2002 |
Chris Lattner <sabre@nondot.org> |
*** empty log message *** git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3185 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
17689dfe241702cbbbd29cf1e4e4229444f3e9f3 |
|
30-Jul-2002 |
Chris Lattner <sabre@nondot.org> |
Declare that these passes only depend on the CFG of the function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3157 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
eb702350f7ac9c8910755fba44a98bc9a09beb4f |
|
29-Jul-2002 |
Chris Lattner <sabre@nondot.org> |
* Eliminate the Provided set. All Passes now finally just automatically provide themselves. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3124 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.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/VMCore/Dominators.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/VMCore/Dominators.cpp
|
ce6ef112c4abb1f7fd64738c5760f48cddc9a4a5 |
|
26-Jul-2002 |
Chris Lattner <sabre@nondot.org> |
*** empty log message *** git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3105 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.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/VMCore/Dominators.cpp
|
ef704a23b4c3cadf11b093fa628cafa38fa05ad5 |
|
14-May-2002 |
Chris Lattner <sabre@nondot.org> |
Add method to check to see if two _Instructions_ dominate each other git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2616 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
fc514f40a63126bbda9404c717890f8dd6cbbcad |
|
07-May-2002 |
Chris Lattner <sabre@nondot.org> |
Move UnifyFunctionExitNodes to Utils library: final resting place this time git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2531 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
c8cc4cb03bd90f89be7fe1649542a2d5ae689632 |
|
07-May-2002 |
Chris Lattner <sabre@nondot.org> |
Updates to move some header files out of include/llvm/Transforms into the Scalar and Utils subdirectories git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2523 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
07a228d1f7342c2fbe7dd7a307ee43b6bc026fc7 |
|
06-May-2002 |
Chris Lattner <sabre@nondot.org> |
Mark analyses that only depend on the CFG of a function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2507 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
c6f3ae5c66c8e0dab6a2bd9601d0e253ef9ba794 |
|
29-Apr-2002 |
Chris Lattner <sabre@nondot.org> |
Eliminate duplicate or unneccesary #include's git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2397 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
1b7f7dc4b45a900fae2e9b062d588a995935727a |
|
28-Apr-2002 |
Chris Lattner <sabre@nondot.org> |
Eliminate the cfg namespace, moving LoopInfo, Dominators, Interval* classes to the global namespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2370 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
a298d27808ecb8ffb574d6e50f56601db2ec5fda |
|
28-Apr-2002 |
Chris Lattner <sabre@nondot.org> |
Change the Dominator info and LoopInfo classes to keep track of BasicBlock's, not const BasicBlocks git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2337 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
483e14ee0412a98db1fb0121528d8d621ae3dfdb |
|
27-Apr-2002 |
Chris Lattner <sabre@nondot.org> |
s/Method/Function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2336 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
f57b845547302d24ecb6a9e79d7bc386f761a6c9 |
|
27-Apr-2002 |
Chris Lattner <sabre@nondot.org> |
* Rename MethodPass class to FunctionPass - Rename runOnMethod to runOnFunction * Transform getAnalysisUsageInfo into getAnalysisUsage - Method is now const - It now takes one AnalysisUsage object to fill in instead of 3 vectors to fill in - Pass's now specify which other passes they _preserve_ not which ones they modify (be conservative!) - A pass can specify that it preserves all analyses (because it never modifies the underlying program) * s/Method/Function/g in other random places as well git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2333 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
2fbfdcffd3e0cf41422aaa6c526c37cb02b81341 |
|
07-Apr-2002 |
Chris Lattner <sabre@nondot.org> |
Change references to the Method class to be references to the Function class. The Method class is obsolete (renamed) and all references to it are being converted over to Function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2144 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
455889aa79e3463a4b0f2161e3d9d72a683268b6 |
|
12-Feb-2002 |
Chris Lattner <sabre@nondot.org> |
* Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and into llvm/Support/CFG.h * Make pred & succ iterators for intervals global functions * Add #includes that are now neccesary because BasicBlock.h doesn't include InstrTypes.h anymore git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1750 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.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/VMCore/Dominators.cpp
|
eb5230c4f98bd94c019bc2faed9432ca892e2f11 |
|
05-Feb-2002 |
Chris Lattner <sabre@nondot.org> |
Remove generic routines to Support/SetOperations.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1715 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
65b97090710df5c3fc70752eeff23de5cf4d1532 |
|
31-Jan-2002 |
Chris Lattner <sabre@nondot.org> |
Provide the right AnalysisID for postdominators git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1616 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.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/VMCore/Dominators.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/VMCore/Dominators.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/VMCore/Dominators.cpp
|
ff5a8c43c9a299b133aeac6bae73959f4f94b19e |
|
26-Nov-2001 |
Chris Lattner <sabre@nondot.org> |
Fix a bad assertion to be correct . The root basic block can be used by PHI nodes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1370 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
f0604b84c7273fc2503454ecaa198eaee5b615bd |
|
01-Oct-2001 |
Chris Lattner <sabre@nondot.org> |
Pull predecessor and successor iterators out of the CFG*.h files, and plop them into the BasicBlock class where they should be. pred_begin/pred_end become methods on BasicBlock, and the cfg namespace isn't used anymore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@691 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
3ff4387113d7e74a8aa73f80c3518cb95f09a64b |
|
29-Sep-2001 |
Chris Lattner <sabre@nondot.org> |
Pull iterators out of CFG.h and CFGdecls and put them in Support directory git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@664 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
1b5499bbb82848ee7d5d5a9062eb97b63fd9c5c6 |
|
24-Aug-2001 |
Chris Lattner <sabre@nondot.org> |
Make sure noone branches to the entry node of the method git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@369 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
384e5b1595fbc766552f2f2f74586d7b53519623 |
|
23-Aug-2001 |
Chris Lattner <sabre@nondot.org> |
Handle case where there is no exit node from a flowgraph git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
57dbb3ad63b6a0e77798edb156ef43daa3bfc67e |
|
23-Jul-2001 |
Chris Lattner <sabre@nondot.org> |
Moved inline/llvm/Tools/* to include/llvm/Support/* git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@279 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
3590830cef7fcc4da262d3f3c329fae44c589374 |
|
08-Jul-2001 |
Chris Lattner <sabre@nondot.org> |
Fixed post dominator frontiers! Yaay! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
94108ab8a36806d5c7fb56bed4ddffda064f5c5d |
|
06-Jul-2001 |
Chris Lattner <sabre@nondot.org> |
Implement support for postdominators, except in dom frontiers git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|
1715229db9c04e73ba8acb8579eb2b9465209785 |
|
02-Jul-2001 |
Chris Lattner <sabre@nondot.org> |
Checkin of new dominator calculation routines. These will be improved in the future to do post dominators and stuff git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/Dominators.cpp
|