cddc3e03e4ec99c0268c03a126195173e519ed58 |
|
04-Mar-2016 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master LLVM for rebase to r256229 http://b/26987366 (cherry picked from commit f3ef5332fa3f4d5ec72c178a2b19dac363a19383) Change-Id: Ic75dcb63191d65df1b69724576392c0aaeb47728
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
6948897e478cbd66626159776a8017b3c18579b9 |
|
01-Jul-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master LLVM for rebase to r239765 Bug: 20140355: This rebase pulls the upstream fix for the spurious warnings mentioned in the bug. Change-Id: I7fd24253c50f4d48d900875dcf43ce3f1721a3da
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
4c5e43da7792f75567b693105cc53e3f1992ad98 |
|
08-Apr-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master llvm for rebase to r233350 Change-Id: I07d935f8793ee8ec6b7da003f6483046594bca49
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
ebe69fe11e48d322045d5949c83283927a0d790b |
|
23-Mar-2015 |
Stephen Hines <srhines@google.com> |
Update aosp/master LLVM for rebase to r230699. Change-Id: I2b5be30509658cb8266be782de0ab24f9099f9b9
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
37ed9c199ca639565f6ce88105f9e39e898d82d0 |
|
01-Dec-2014 |
Stephen Hines <srhines@google.com> |
Update aosp/master LLVM for rebase to r222494. Change-Id: Ic787f5e0124df789bd26f3f24680f45e678eef2d
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
c6a4f5e819217e1e12c458aed8e7b122e23a3a58 |
|
21-Jul-2014 |
Stephen Hines <srhines@google.com> |
Update LLVM for rebase to r212749. Includes a cherry-pick of: r212948 - fixes a small issue with atomic calls Change-Id: Ib97bd980b59f18142a69506400911a6009d9df18
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
dce4a407a24b04eebc6a376f8e62b41aaa7b071f |
|
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update LLVM for 3.5 rebase (r209712). Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
36b56886974eae4f9c5ebc96befd3e7bfe5de338 |
|
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Update to LLVM 3.5a. Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
4e6b24ffcfafbc0c5eda1bb89163ccd56f394fdf |
|
20-May-2013 |
Hal Finkel <hfinkel@anl.gov> |
Rename LoopSimplify.h to LoopUtils.h As discussed, LoopUtils.h is a better name. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182314 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
fc32605ff3a2a922362d2fb5cd31b47ce47e3fb8 |
|
20-May-2013 |
Hal Finkel <hfinkel@anl.gov> |
Expose InsertPreheaderForLoop from LoopSimplify to other passes Other passes, PPC counter-loop formation for example, also need to add loop preheaders outside of the regular loop simplification pass. This makes InsertPreheaderForLoop a global function so that it can be used by other passes. No functionality change intended. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182299 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
0b8c9a80f20772c3793201ab5b251d3520b9cea3 |
|
02-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Move all of the header files which are involved in modelling the LLVM IR into their new header subdirectory: include/llvm/IR. This matches the directory structure of lib, and begins to correct a long standing point of file layout clutter in LLVM. There are still more header files to move here, but I wanted to handle them in separate commits to make tracking what files make sense at each layer easier. The only really questionable files here are the target intrinsic tablegen files. But that's a battle I'd rather not fight today. I've updated both CMake and Makefile build systems (I think, and my tests think, but I may have missed something). I've also re-sorted the includes throughout the project. I'll be committing updates to Clang, DragonEgg, and Polly momentarily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
d04a8d4b33ff316ca4cf961e06c9e312eff8e64f |
|
03-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Use the new script to sort the includes of every file under lib. Sooooo many of these had incorrect or strange main module includes. I have manually inspected all of these, and fixed the main module include to be the nearest plausible thing I could find. If you own or care about any of these source files, I encourage you to take some time and check that these edits were sensible. I can't have broken anything (I strictly added headers, and reordered them, never removed), but they may not be the headers you'd really like to identify as containing the API being implemented. Many forward declarations and missing includes were added to a header files to allow them to parse cleanly when included first. The main module rule does in fact have its merits. =] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169131 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
8999f4777b920ab144a15a6f54a865a07f9c4a7f |
|
26-Oct-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
LoopSimplify: Preserve DependenceAnalysis. This is currently true, but may change when DA grows more aggressive caching. Without this setting it's impossible to use DA from a LoopPass because DA is a function pass and cannot be properly scheduled in between LoopPasses. The LoopManager reacts to this with an infinite loop which made this really annoying to debug. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166788 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
b2b2273ef4b67b7da4c05472095b8b96cc04ca8d |
|
26-Oct-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Fix SCEV cache invalidation in LCSSA and LoopSimplify. The LoopSimplify bug is pretty harmless because the loop goes from unanalyzable to analyzable but the LCSSA bug is very nasty. It only comes into play with a specific order of the LoopPassManager worklist and can cause actual miscompilations, when a SCEV refers to a value that has been replaced with PHI node. SCEVExpander may then insert code into the wrong place, either violating domination or randomly miscompiling stuff. Comes with an extensive test case reduced from the test-suite with bugpoint+SCEVValidator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166787 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
7edc277f7214837d3b7cc382350ea1eb968d09aa |
|
20-Mar-2012 |
Andrew Trick <atrick@apple.com> |
LoopSimplify bug fix. Handle indirect loop back edges. Do not call SplitBlockPredecessors on a loop preheader when one of the predecessors is an indirectbr. Otherwise, you will hit this assert: !isa<IndirectBrInst>(Preds[i]->getTerminator()) && "Cannot split an edge from an IndirectBrInst" git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153134 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
cd1142ef7f9ed5a570da8b332ba481061eb6fcb6 |
|
20-Mar-2012 |
Andrew Trick <atrick@apple.com> |
whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153133 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
7d1ff37118d5b3febae818676d9dd9513057fed7 |
|
15-Dec-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Make loop preheader insertion in LoopSimplify handle the case where the loop header is a landing pad correctly (by splitting the landingpad out of the loop header). Make some adjustments to the rest of LoopSimplify to make it clear that the rest of LoopSimplify isn't making bad assumptions about the presence of landing pads. PR11575. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146621 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
2fac1d5d61a83c45dcf44119c41dce15ef10e9dc |
|
09-Dec-2011 |
Jakub Staszak <kubastaszak@gmail.com> |
SplitBlockPredecessors uses ArrayRef instead of Data and Size. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146277 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
618c1dbd293d15ee19f61b1156ab8086ad28311a |
|
01-Dec-2011 |
Chad Rosier <mcrosier@apple.com> |
Propagate TargetLibraryInfo throughout ConstantFolding.cpp and InstructionSimplify.cpp. Other fixups as needed. Part of rdar://10500969 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145559 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
b29ec0642153c4b820d3814d30ddd33e763076f2 |
|
19-Aug-2011 |
Bill Wendling <isanbard@gmail.com> |
Intelligently split the landing pad block. We have to be careful when splitting the landing pad block, because the landingpad instruction is required to remain as the first non-PHI of an invoke's unwind edge. To retain this, we split the block into two blocks, moving the predecessors within the loop to one block and the remaining predecessors to the other. The landingpad instruction is cloned into the new blocks. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138015 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
66af89f642628c0d52138e86f9e4a0b9f5994474 |
|
18-Aug-2011 |
Bill Wendling <isanbard@gmail.com> |
Revert r137871. The loop simplify pass should require all exits from a loop that aren't from an indirect branch need to be dominated by the loop header. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137981 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
0906a7c46cfc71e7c09dd6362df4310e72fdbc6b |
|
17-Aug-2011 |
Bill Wendling <isanbard@gmail.com> |
Don't optimize the landing pad exit block. One way to exit the loop is through an unwind edge. However, that may involve splitting the critical edge of the landing pad, which is non-trivial. Prevent the transformation from rewriting the landing pad exit loop block. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137871 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
1f6a329f79b3568d379142f921f59c4143ddaa14 |
|
12-Aug-2011 |
Duncan Sands <baldrick@free.fr> |
Silence a bunch (but not all) "variable written but not read" warnings when building with assertions disabled. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137460 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
1009c3299be8c147ecd3fbd2d75ba1bafb2c84b1 |
|
03-Aug-2011 |
Andrew Trick <atrick@apple.com> |
SCEV: Use AssertingVH to catch dangling BasicBlock* when passes forget to notify SCEV of a change. Add forgetLoop in a couple of those places. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136797 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
1c3ff6595f944c2c9b834895e41c78c9c922f4af |
|
03-Aug-2011 |
Andrew Trick <atrick@apple.com> |
whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136795 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
c0136990274d5842f3f389362826e614454c0201 |
|
17-Jun-2011 |
Devang Patel <dpatel@apple.com> |
Set debug loc for new preheader's terminator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
7a2bdde0a0eebcd2125055e0eacaca040f0b766c |
|
15-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
Fix a ton of comment typos found by codespell. Patch by Luis Felipe Strano Moraes! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129558 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
3ecfc861b4365f341c5c969b40e1afccde676e6f |
|
30-Mar-2011 |
Jay Foad <jay.foad@gmail.com> |
Remove PHINode::reserveOperandSpace(). Instead, add a parameter to PHINode::Create() giving the (known or expected) number of operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128537 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
4a60b932a279b3f5934a274f7fe4535026c5aed1 |
|
11-Feb-2011 |
Cameron Zwarich <zwarich@apple.com> |
Rename 'loopsimplify' to 'loop-simplify'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125317 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
301278719b67dcdd1159d9f91b4db5ef57f025c6 |
|
18-Jan-2011 |
Cameron Zwarich <zwarich@apple.com> |
Remove code for updating dominance frontiers and some outdated references to dominance and post-dominance frontiers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123725 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
f73b99ab43c36b026a03430a30c329a343cdd77b |
|
11-Jan-2011 |
Chris Lattner <sabre@nondot.org> |
this pass claims to preserve scev, make sure to tell it about deletions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123247 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
67fb341f8b0a72ca0da8ce53baa3f335c1310a85 |
|
02-Jan-2011 |
Duncan Sands <baldrick@free.fr> |
Fix PR8702 by not having LoopSimplify claim to preserve LCSSA form. As described in the PR, the pass could break LCSSA form when inserting preheaders. It probably would be easy enough to fix this, but since currently we always go into LCSSA form after running this pass, doing so is not urgent. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
d0c6f3dafd7c3e9137d4e6415014c94137fcd3fc |
|
18-Nov-2010 |
Duncan Sands <baldrick@free.fr> |
Factor code for testing whether replacing one value with another preserves LCSSA form out of ScalarEvolution and into the LoopInfo class. Use it to check that SimplifyInstruction simplifications are not breaking LCSSA form. Fixes PR8622. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119727 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
cdbd99262286e96729007ac535cd430ecb3d38ac |
|
16-Nov-2010 |
Duncan Sands <baldrick@free.fr> |
Have a few places that want to simplify phi nodes use SimplifyInstruction rather than calling hasConstantValue. No intended functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119352 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
ffa75cdcf82ef2034249a313b9276eaa1bee6c43 |
|
04-Sep-2010 |
Dan Gohman <gohman@apple.com> |
Fix LoopSimplify to notify ScalarEvolution when splitting a loop backedge into an inner loop, as the new loop iteration may differ substantially. This fixes PR8078. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113057 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
02dd53e1c5b941ca5f60fca1b95ebcaf9ccd1dfc |
|
23-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Now that PassInfo and Pass::ID have been separated, move the rest of the passes over to the new registration API. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111815 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
ebd9923bd8b7d3d8d8a9f75d347e3f101252bc51 |
|
16-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Avoid #include <ScalarEvolution.h> in LoopSimplify.cpp, which doesn't actually use ScalarEvolution. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111124 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
c2f40066bbceb15e73e5c4df97d2d115f8a36e58 |
|
14-Aug-2010 |
Dan Gohman <gohman@apple.com> |
LoopSimplify shouldn't split loop backedges that use indirectbr. PR7867. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111061 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
052f0001588a1613f845c84c04b38ced28ad6711 |
|
26-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Remove LCSSA's bogus dependence on LoopSimplify and LoopSimplify's bogus dependence on DominanceFrontier. Instead, add an explicit DominanceFrontier pass in StandardPasses.h to ensure that it gets scheduled at the right time. Declare that loop unrolling preserves ScalarEvolution, and shuffle some getAnalysisUsages. This eliminates one LoopSimplify and one LCCSA run in the standard compile opts sequence. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109413 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
481c4c07347c40fa666d09f3b31fbe2ca27e2d52 |
|
22-Jul-2010 |
Gabor Greif <ggreif@gmail.com> |
keep in 80 cols git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109122 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
1e381fcd553a3955a10338fd305efc023d7d22e1 |
|
16-Jul-2010 |
Dan Gohman <gohman@apple.com> |
Reorder the contents of various getAnalysisUsage functions, eliminating a redundant loopsimplify run from the default -O2 sequence. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108539 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
bf2eefdb0dac4e331ca26fa0792a1dfd420b06f6 |
|
09-Jul-2010 |
Gabor Greif <ggreif@gmail.com> |
cache result of operator* git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107983 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
9672414017e9d5d764a56e5c8c61b39163d2d5e5 |
|
09-Jul-2010 |
Gabor Greif <ggreif@gmail.com> |
cache operator*'s result (in multiple functions) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107965 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
fe60104ac97f3a8736dcfbfdf9547c7b7cc7b951 |
|
22-Jun-2010 |
Dan Gohman <gohman@apple.com> |
Use pre-increment instead of post-increment when the result is not used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106542 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
689fac02268929b756086753b4656d6dabc5cf2d |
|
15-Mar-2010 |
Devang Patel <dpatel@apple.com> |
Skip debug info intrinsics. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98581 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
2d0a91cd6c3df32014d547255d6a615bd1bc84fb |
|
10-Mar-2010 |
Dan Gohman <gohman@apple.com> |
Fix a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98122 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
c5e49c64d18eacdd72c80c04855df846df97f8a8 |
|
01-Mar-2010 |
Dan Gohman <gohman@apple.com> |
Add some debug output to LoopSimplify. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97458 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
85669637139089eaed8def1583ac04266c9654e2 |
|
25-Feb-2010 |
Dan Gohman <gohman@apple.com> |
Make LoopSimplify change conditional branches in loop exiting blocks which branch on undef to branch on a boolean constant for the edge exiting the loop. This helps ScalarEvolution compute trip counts for loops. Teach ScalarEvolution to recognize single-value PHIs, when safe, and ForgetSymbolicName to forget such single-value PHI nodes as apprpriate in ForgetSymbolicName. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97126 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
17146baef5b79114f05e0f99fcba389f2764b65d |
|
05-Feb-2010 |
Dan Gohman <gohman@apple.com> |
Use a SmallSetVector instead of a SetVector; this code showed up as a malloc caller in a profile. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95407 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
5cd8770412f98f6e6416c439e01222b3643b9e22 |
|
15-Jan-2010 |
Bob Wilson <bob.wilson@apple.com> |
Fix a comment typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93560 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
3cf4d90f3d35a6d5293e46790121294e89976cc9 |
|
21-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
revert r89298, which was committed without a testcase. I think the underlying PHI node insertion issue in SSAUpdate is fixed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91821 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
34d2b90d09226ebf6189775acfd2801e127b10ec |
|
18-Dec-2009 |
Dan Gohman <gohman@apple.com> |
Update a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91645 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
a58a04921deba911d6ead8d24f495cec234681c1 |
|
20-Nov-2009 |
Dan Gohman <gohman@apple.com> |
Make Loop::getLoopLatch() work on loops which don't have preheaders, as it may be used in contexts where preheader insertion may have failed due to an indirectbr. Make LoopSimplify's LoopSimplify::SeparateNestedLoop properly fail in the case that it would require splitting an indirectbr edge. These fix PR5502. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89484 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
d0b552cc5680ae245258598586115d05291b7b19 |
|
19-Nov-2009 |
Jim Grosbach <grosbach@apple.com> |
Eliminate duplicate phi nodes in loops. Loop rotation, for example, can introduce these, and it's beneficial to later passes to clean them up. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
b1dc915a8d4971880a016e678ccf563d1a03a916 |
|
05-Nov-2009 |
Dan Gohman <gohman@apple.com> |
Avoid calling getUniqueExitBlocks from within LoopSimplify, as it depends on loops having dedicated exits, which LoopSimplify can no longer always guarantee. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86181 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
f4e82d1f2e25f7cf8b7e9c3bd42b0e384139e07e |
|
05-Nov-2009 |
Dan Gohman <gohman@apple.com> |
The introduction of indirectbr meant the introduction of unsplittable critical edges, which means the introduction of loops which cannot be transformed to LoopSimplify form. Fix LoopSimplify to avoid transforming such loops into invalid code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86176 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
5184635eda68a0cdcd39c958ccc11ba1843bcc7b |
|
30-Sep-2009 |
Dan Gohman <gohman@apple.com> |
Fix this code so that it doesn't try to iterate through a std::vector while calling changeImmediateDominator, which removes elements from the vector. This fixes PR5097. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83166 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
d84db1133345234738b646c70b907bf8a0983ac9 |
|
28-Sep-2009 |
Dan Gohman <gohman@apple.com> |
Convert LoopSimplify and LoopExtractor from FunctionPass to LoopPass. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82990 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
5c89b5240c90eb8171f999e5f06f815502d0321c |
|
08-Sep-2009 |
Dan Gohman <gohman@apple.com> |
Re-apply r80926, with fixes: keep the domtree informed of new blocks that get created during loop unswitching, and fix SplitBlockPredecessors' LCSSA updating code to create new PHIs instead of trying to just move existing ones. Also, optimize Loop::verifyLoop, since it gets called a lot. Use searches on a sorted list of blocks instead of calling the "contains" function, as is done in other places in the Loop class, since "contains" does a linear search. Also, don't call verifyLoop from LoopSimplify or LCSSA, as the PassManager is already calling verifyLoop as part of LoopInfo's verifyAnalysis. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81221 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
8f78a58e14fa754cde827e46ad03f00c7a6ead01 |
|
06-Sep-2009 |
Evan Cheng <evan.cheng@apple.com> |
Revert r80926. It causes loop unswitch assertion and slow down some JIT tests significantly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81101 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
8fc5ad33691b2a0672a7487da1f56b6f7f675a1b |
|
03-Sep-2009 |
Dan Gohman <gohman@apple.com> |
Add a verifyAnalysis to LoopInfo, LoopSimplify, and LCSSA form that verify that these passes are properly preserved. Fix several transformation passes that claimed to preserve LoopSimplify form but weren't. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80926 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
bccfc24c4e8092e1ee18746dd4cee01247728faa |
|
03-Sep-2009 |
Dan Gohman <gohman@apple.com> |
Change PHINode::hasConstantValue to have a DominatorTree argument instead of a bool argument, and to do the dominator check itself. This makes it eaiser to use when DominatorTree information is available. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80920 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
1d0be15f89cb5056e20e2d24faa8d6afb1573bca |
|
13-Aug-2009 |
Owen Anderson <resistor@mac.com> |
Push LLVMContexts through the IntegerType APIs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78948 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
9e9a0d5fc26878e51a58a8b57900fcbf952c2691 |
|
31-Jul-2009 |
Owen Anderson <resistor@mac.com> |
Move more code back to 2.5 APIs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77635 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
e922c0201916e0b980ab3cfe91e1413e68d55647 |
|
22-Jul-2009 |
Owen Anderson <resistor@mac.com> |
Get rid of the Pass+Context magic. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76702 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
bdc017edacb713119b24ab269d250a82d62fffeb |
|
15-Jul-2009 |
Dan Gohman <gohman@apple.com> |
Make makeLoopInvariant report whether it made any changes or not, and use this to simplify more code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75722 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
0df6e09d43d6d733555a10d22572ddb0006e7d23 |
|
14-Jul-2009 |
Dan Gohman <gohman@apple.com> |
Update LoopSimplify and LoopUnswitch to use the new makeLoopInvariant function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75584 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
0a205a459884ec745df1c529396dd921f029dafd |
|
06-Jul-2009 |
Owen Anderson <resistor@mac.com> |
More LLVMContext-ification. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74807 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
2aa93efa0c983449e5464165e80ebd9c0fb5f6c1 |
|
30-Jun-2009 |
Dan Gohman <gohman@apple.com> |
Minor code simplification. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74491 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
a1baee20c4b042eca1f182fc003f38ab52efc7a9 |
|
28-Jun-2009 |
Dan Gohman <gohman@apple.com> |
Remove the block from the LoopInfo, rather than just the Loop. LoopInfo will handle removing it from the Loop, as well as updating its own tables. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74398 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
4b35f83b91a1a313f0730c600e5178aaf7df98d6 |
|
27-Jun-2009 |
Dan Gohman <gohman@apple.com> |
Teach LoopSimplify how to merge multiple loop exits into a single exit, when one of them can be converted to a trivial icmp and conditional branch. This addresses what is essentially a phase ordering problem. SimplifyCFG knows how to do this transformation, but it doesn't do so if the primary block has any instructions in it other than an icmp and a branch. In the given testcase, the block contains other instructions, however they are loop-invariant and can be hoisted. SimplifyCFG doesn't have LoopInfo though, so it can't hoist them. And, it's important that the blocks be merged before LoopRotation, as it doesn't support multiple-exit loops. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74396 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
1465d61bdd36cfd6021036a527895f0dd358e97d |
|
28-Jan-2009 |
Duncan Sands <baldrick@free.fr> |
Rename getAnalysisToUpdate to getAnalysisIfAvailable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63198 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
9b78763fce4cb418e7a2e672efb84bac25559b79 |
|
22-Jun-2008 |
Dan Gohman <gohman@apple.com> |
Use Loop::block_iterator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52616 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
4c37c07ee3bfacaaf90ea57165ef6855b4ed8b22 |
|
06-Jun-2008 |
Devang Patel <dpatel@apple.com> |
LoopSimplify preserves AA. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52053 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
6ddba2b933645d308428201e942abe1274fa5085 |
|
13-May-2008 |
Dan Gohman <gohman@apple.com> |
Change class' public PassInfo variables to by initialized with the address of the PassInfo directly instead of calling getPassInfo. This eliminates a bunch of dynamic initializations of static data. Also, fold RegisterPassBase into PassInfo, make a bunch of its data members const, and rearrange some code to initialize data members in constructors instead of using setter member functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51022 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
280a6e607d8eb7401749a92db624a82de47da777 |
|
25-Apr-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Remove 'unwinds to' support from mainline. This patch undoes r47802 r47989 r48047 r48084 r48085 r48086 r48088 r48096 r48099 r48109 and r48123. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50265 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
54b9c3ba2a5b0aa8fda817bcc72c370040cfb3f8 |
|
21-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
Move SplitBlockPredecessors out of loopsimplify into BasicBlockUtils.h as a global helper function. At the same type, switch it from taking a vector of predecessors to an arbitrary sequential input. This allows us to switch LoopSimplify to use a SmallVector for various temporary vectors that it passed into SplitBlockPredecessors. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50020 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
1b58678d541b424da32195470664e373706e7898 |
|
21-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
Move domtree/frontier updating earlier, allowing us to use it to update phi nodes, removing a hack. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50019 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
b85979434df1c11799b84292339a47d2e317b573 |
|
21-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
Factor dominator tree and frontier updating into SplitBlockPredecessors instead of doing it after every call. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50018 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
34093a634accd3c6a9594588b792b7dd24b50473 |
|
21-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
simplify code, fit in 80 cols. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50015 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
051a950000e21935165db56695e35bade668193b |
|
06-Apr-2008 |
Gabor Greif <ggreif@gmail.com> |
API changes for class Use size reduction, wave 1. Specifically, introduction of XXX::Create methods for Users that have a potentially variable number of Uses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49277 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
529de8a45702cd34968d79d13f95ed1e5d5fa250 |
|
09-Mar-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Update the block cloner which fixes bugpoint on code using unwind_to (phew!) and also update the cloning interface's major user, the loop optimizations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48088 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
d735ee85dbab8e4f66f9ec157f19956e0d11ec7a |
|
27-Nov-2007 |
Owen Anderson <resistor@mac.com> |
Make LoopInfoBase more generic, in preparation for having MachineLoopInfo. This involves a small interface change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44348 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
3cb63ddd5183a1469e4557b3e22735ed3ace05b2 |
|
29-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
Fix PR1752 and LoopSimplify/2007-10-28-InvokeCrash.ll: terminators can have uses too. Wouldn't it be nice if invoke didn't exist? :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43426 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
7b714321df4d286018d594c9c9f132f343dbabdc |
|
18-Oct-2007 |
Owen Anderson <resistor@mac.com> |
Move Split<...>() into DomTreeBase. This should make the #include's of DominatorInternals.h in CodeExtractor and LoopSimplify unnecessary. Hartmut, could you confirm that this fixes the issues you were seeing? git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43115 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
469b7a4ec114c9b7ecb438b253c489542ba1c96e |
|
17-Oct-2007 |
Hartmut Kaiser <hartmut.kaiser@gmail.com> |
Fixed linker errors (unresolved externals: split<>(...)) when compiling with VC++. Please review. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43081 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
b7211a2ce13a0365e0e1dd2f27adda2ee3d1288b |
|
21-Aug-2007 |
Devang Patel <dpatel@apple.com> |
Use SmallVector instead of std::vector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41207 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
3589df8013c6e893100de36260cc0e2f3852dfd4 |
|
06-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
remove some dead lines git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40859 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
58e0ef1e90c3f6dbae213612b44e56f7d6d65ea7 |
|
19-Jul-2007 |
Devang Patel <dpatel@apple.com> |
Verify loop info. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40062 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
c08fa28897356be54fba724056c3aa91da8b3e39 |
|
29-Jun-2007 |
David Greene <greened@obbligato.org> |
Fix reference to iterator invalidated by an erase operation. Uncovered by _GLIBCXX_DEBUG. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37796 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
f60e5a2cd920da67fc4a40b3c5006032694161ef |
|
11-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Simplify. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37542 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
b28aaadfff12e1a697b2145b896c1b9fa0bcbffa |
|
11-Jun-2007 |
Devang Patel <dpatel@apple.com> |
simplify git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37541 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
e3f653606def60bf7e81c7e5d126f02c6f8b1360 |
|
11-Jun-2007 |
Devang Patel <dpatel@apple.com> |
Simplify. Dominator Tree is required so always available. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37540 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
83beaee227dad622a7e378897c6f29b511388fa0 |
|
04-Jun-2007 |
Devang Patel <dpatel@apple.com> |
s/DominatorTree::createNewNode/DominatorTree::addNewBlock/g git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37415 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
ecd94c804a563f2a86572dcf1d2e81f397e19daa |
|
06-May-2007 |
Nick Lewycky <nicholas@mxc.ca> |
Fix typo in comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36873 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
58d7fbf250659246fcca9417a91170a681b1850a |
|
20-Apr-2007 |
Devang Patel <dpatel@apple.com> |
Avoid recursion. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36272 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
cc221cdf0cf90459bda58969eacac926d0ca6f1c |
|
10-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Re-constify things that don't break the build. Last patch in this series, I promise. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35848 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
f7c83188cdef7f3c0a6f3921f5aa3dae3f559eed |
|
10-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Unconst-ify stuff that broke the build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35843 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
ad190145912facc6fbf2fbe58023bb238fbf2365 |
|
10-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Const-ify some parameters, and some cosmetic cleanups. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35842 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
0cd04618734590b3328d6db2214ee523d11104ed |
|
10-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Tabs -> Spaces git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35841 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
17cba6d2326f1f81098334def5f4f99d867e3ce4 |
|
10-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Improve some _slow_ behavior introduced in my patches the last few days. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35839 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
558fc740da62bb93ddfc85f353ab0665b566127f |
|
09-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Cleanup some from my DomSet-removal changes. Add a new isReachableFromEntry test to ETForest to factor a common test out of code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35786 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
a397ce1cc2872b059a128f43b8fd300c61700793 |
|
08-Apr-2007 |
Nick Lewycky <nicholas@mxc.ca> |
Remove DominatorSet usage from LoopSimplify. Patch from Owen Anderson. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35757 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
4f9e58ecdf247f87a9b7cef69b1fa37fb5b07f0d |
|
07-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Completely purge DomSet from LoopSimplify. This is part of the continuing work on PR1171. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35730 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
d44008ae4060a4e83981fa403a964723ec0351ba |
|
07-Apr-2007 |
Owen Anderson <resistor@mac.com> |
Expunge a bunch of uses of DomSet from LoopSimplify. Many more remain. This is the beginning of work for PR1171. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35720 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
d216e8ba60494caacf919cbf5fef110d48f0d162 |
|
19-Dec-2006 |
Chris Lattner <sabre@nondot.org> |
switch more statistics over to STATISTIC, eliminating static ctors. Also, delete some dead ones. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32694 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
ac0b6ae358944ae8b2b5a11dc08f52c3ed89f2da |
|
06-Dec-2006 |
Chris Lattner <sabre@nondot.org> |
Detemplatize the Statistic class. The only type it is instantiated with is 'unsigned'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32279 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
3ed469ccd7b028a030b550d84b7336d146f5d8fa |
|
02-Nov-2006 |
Reid Spencer <rspencer@reidspencer.com> |
For PR786: Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting fall out by removing unused variables. Remaining warnings have to do with unused functions (I didn't want to delete code without review) and unused variables in generated code. Maintainers should clean up the remaining issues when they see them. All changes pass DejaGnu tests and Olden. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31380 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
120fce5540b34f81ee5773d30548ce7cc2b5f571 |
|
23-Sep-2006 |
Chris Lattner <sabre@nondot.org> |
Be far more careful when splitting a loop header, either to form a preheader or when splitting loops with a common header into multiple loops. In particular the old code would always insert the preheader before the old loop header. This is disasterous in cases where the loop hasn't been rotated. For example, it can produce code like: .. outside the loop... jmp LBB1_2 #bb13.outer LBB1_1: #bb1 movsd 8(%esp,%esi,8), %xmm1 mulsd (%edi), %xmm1 addsd %xmm0, %xmm1 addl $24, %edi incl %esi jmp LBB1_3 #bb13 LBB1_2: #bb13.outer leal (%edx,%eax,8), %edi pxor %xmm1, %xmm1 xorl %esi, %esi LBB1_3: #bb13 movapd %xmm1, %xmm0 cmpl $4, %esi jl LBB1_1 #bb1 Note that the loop body is actually LBB1_1 + LBB1_3, which means that the loop now contains an uncond branch WITHIN it to jump around the inserted loop header (LBB1_2). Doh. This patch changes the preheader insertion code to insert it in the right spot, producing this code: ... outside the loop, fall into the header ... LBB1_1: #bb13.outer leal (%edx,%eax,8), %esi pxor %xmm0, %xmm0 xorl %edi, %edi jmp LBB1_3 #bb13 LBB1_2: #bb1 movsd 8(%esp,%edi,8), %xmm0 mulsd (%esi), %xmm0 addsd %xmm1, %xmm0 addl $24, %esi incl %edi LBB1_3: #bb13 movapd %xmm0, %xmm1 cmpl $4, %edi jl LBB1_2 #bb1 Totally crazy, no branch in the loop! :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30587 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
c3984578bed8236f35825ca8aa30b3ed6cff60d5 |
|
23-Sep-2006 |
Chris Lattner <sabre@nondot.org> |
Teach UpdateDomInfoForRevectoredPreds to handle revectored preds that are not reachable, making it general purpose enough for use by InsertPreheaderForLoop. Eliminate custom dominfo updating code in InsertPreheaderForLoop, using UpdateDomInfoForRevectoredPreds instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30586 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
a4f0b3a084d120cfc5b5bb06f64b222f5cb72740 |
|
27-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
s|llvm/Support/Visibility.h|llvm/Support/Compiler.h| git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29911 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
3bb4657488f700bbe3376fb547017163b8fbbd8f |
|
12-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
Don't attempt to split subloops out of a loop with a huge number of backedges. Not only will this take huge amounts of compile time, the resultant loop nests won't be useful for optimization. This reduces loopsimplify time on Transforms/LoopSimplify/2006-08-11-LoopSimplifyLongTime.ll from ~32s to ~0.4s with a debug build of llvm on a 2.7Ghz G5. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29647 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
fa78946482a2cc73a1485887dfd12edd12b742a4 |
|
12-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
Reimplement the loopsimplify code which deletes edges from unreachable blocks that target loop blocks. Before, the code was run once per loop, and depended on the number of predecessors each block in the loop had. Unfortunately, scanning preds can be really slow when huge numbers of phis exist or when phis with huge numbers of inputs exist. Now, the code is run once per function and scans successors instead of preds, which is far faster. In addition, the new code is simpler and is goto free, woo. This change speeds up a nasty testcase Duraid provided me from taking hours to taking ~72s with a debug build. The functionality this implements is already tested in the testsuite as Transforms/CodeExtractor/2004-03-13-LoopExtractorCrash.ll. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29644 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
9525528a7dc5462b6374d38c81ba5c07b11741fe |
|
29-Jun-2006 |
Chris Lattner <sabre@nondot.org> |
Use hidden visibility to make symbols in an anonymous namespace get dropped. This shrinks libllvmgcc.dylib another 67K git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28975 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
0ab9f966de73911930b47ce09f2a691bc687ed32 |
|
15-Feb-2006 |
Chris Lattner <sabre@nondot.org> |
Canonicalize inner loops before outer loops. Inner loop canonicalization can provide work for the outer loop to canonicalize. This fixes a case that breaks unswitching. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26189 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
c27e056d4fd7f6ecdd8e40eb92230be380c5c8c9 |
|
14-Feb-2006 |
Chris Lattner <sabre@nondot.org> |
When splitting exit edges to canonicalize loops, make sure to put the new block in the appropriate loop nest. Third time is the charm, right? git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26187 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
ee628cfefb93e0261ee3e56686d3fffa4e81f371 |
|
12-Feb-2006 |
Chris Lattner <sabre@nondot.org> |
Revert my last patch. It too breaks stuff git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26128 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
d308ddcd67f1e8acc4973186300fba927061ef32 |
|
11-Feb-2006 |
Chris Lattner <sabre@nondot.org> |
Fix for my previously reverted patch git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26126 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
5077c7be92d310abfa8667bebc35d36ec6207d2a |
|
11-Feb-2006 |
Chris Lattner <sabre@nondot.org> |
revert my previous change, it exposed other problems. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26121 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
8587eb3a51117b630c18236cc53eb865e76faf2d |
|
11-Feb-2006 |
Chris Lattner <sabre@nondot.org> |
Make this check stricter. Disallow loop exit blocks from being shared by loops and their subloops. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26118 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
441365c46ed5d9f3ea9136deaf79f24a1468a7e8 |
|
11-Feb-2006 |
Chris Lattner <sabre@nondot.org> |
remove dead expr git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26116 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
baec98d00bda1cc904405d92716ea9d2f4c1fe9d |
|
09-Jan-2006 |
Chris Lattner <sabre@nondot.org> |
Teach loopsimplify to update et-forest. Patch contributed by Daniel Berlin! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25153 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
8385393dc897ddba1cd86c5a05dd85df63316d87 |
|
13-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
remove dead code. The exit block list is computed on demand, thus does not need to be updated. This code is a relic from when it did. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22775 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
98599ba6c6b12a01718b08f57ceb7aa3397c5b2d |
|
10-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
remove some trickiness that broke yacr2 and some other programs last night git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22751 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
94f40324481c04ae8718967b4b5a3d7ca22370e6 |
|
10-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
Make loop-simplify produce better loops by turning PHI nodes like X = phi [X, Y] into just Y. This often occurs when it seperates loops that have collapsed loop headers. This implements LoopSimplify/phi-node-simplify.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22746 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
5e1b23192184aadbfbd79a31641eb3c0c0ecdc05 |
|
05-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
This code can handle non-dominating instructions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22667 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
a83ba0f5c934e2cdbb5724cab365ecc0b5aae6c6 |
|
05-Aug-2005 |
Nate Begeman <natebegeman@mac.com> |
Fix a fixme in CondPropagate.cpp by moving a PhiNode optimization into BasicBlock's removePredecessor routine. This requires shuffling around the definition and implementation of hasContantValue from Utils.h,cpp into Instructions.h,cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22664 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
cec5b8831d4ee3d81990bf1af41ce1d4f4cf9704 |
|
25-Mar-2005 |
Chris Lattner <sabre@nondot.org> |
Enhance loopsimplify to preserve alias analysis instead of clobbering it. This prevents crashes on some programs when using -ds-aa -licm. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20831 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
fee341137957b9021b17561bd644aa726aa524e7 |
|
06-Mar-2005 |
Chris Lattner <sabre@nondot.org> |
trivial simplification git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20494 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
5551706b0f8e970720deea0bf6aa34116030d6be |
|
29-Jan-2005 |
Chris Lattner <sabre@nondot.org> |
Adjust to changes in instruction interfaces. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19900 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
c30bda7540de573c887e00bb76ac78d85f56acd4 |
|
17-Oct-2004 |
Chris Lattner <sabre@nondot.org> |
hasConstantValue will soon return instructions that don't dominate the PHI node, so prepare for this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17095 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
200a360ec66b4d016c17d6f8e3ea559b1fd07205 |
|
28-Sep-2004 |
Alkis Evlogimenos <alkis@evlogimenos.com> |
Pull assignment out of for loop conditional in order for this to compile under windows. Patch contributed by Paolo Invernizzi! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16534 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
4b5015604908e9296800991a7c538a255356428f |
|
20-Sep-2004 |
Chris Lattner <sabre@nondot.org> |
Prototype these functions more accurately git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16432 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
fed22aac4337c589841c443be70fe05559693f6a |
|
15-Jul-2004 |
Chris Lattner <sabre@nondot.org> |
Fix PR404 try #2 This version takes about 1s longer than the previous one (down to 2.35s), but on the positive side, it actually works :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14856 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
de7aee760e77d49877ec308bc47dc455b2b754af |
|
15-Jul-2004 |
Chris Lattner <sabre@nondot.org> |
Revert previous patch until I get a bug fixed git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14853 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
507e3d6dc3face0d68eaf30e30dac07dc948ea2f |
|
15-Jul-2004 |
Chris Lattner <sabre@nondot.org> |
Fix PR404: Loop simplify is really slow on 252.eon This eliminates an N*N*logN algorithm from the loop simplify pass, replacing it with a much simpler and faster alternative. In a debug build, this reduces gccas time on eon from 85s to 42s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14851 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
59fb87d469b9b38b0f4c1e31a2f34fa8f09b981d |
|
19-Apr-2004 |
Chris Lattner <sabre@nondot.org> |
Correct rewriting of exit blocks after my last patch git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13048 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
f1ab4b4eac5603d19c20f4a508f93a118a52bdd5 |
|
19-Apr-2004 |
Chris Lattner <sabre@nondot.org> |
Change the ExitBlocks list from being explicitly contained in the Loop structure to being dynamically computed on demand. This makes updating loop information MUCH easier. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13045 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
4b66242c5498a99ed754f698d779243dd1e291e2 |
|
13-Apr-2004 |
Chris Lattner <sabre@nondot.org> |
Fix LoopSimplify/2004-04-13-LoopSimplifyUpdateDomFrontier.ll LoopSimplify was not updating dominator frontiers correctly in some cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12890 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
1f62f82b05563df9c83094608de24ea581014d1e |
|
13-Apr-2004 |
Chris Lattner <sabre@nondot.org> |
Refactor code a bit to make it simpler and eliminate the goto git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12888 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
529b28da455a703d226a31a03400e6662ff569fe |
|
13-Apr-2004 |
Chris Lattner <sabre@nondot.org> |
This patch addresses PR35: Loop simplify should reconstruct nested loops. This is fairly straight-forward, but was a real nightmare to get just perfect. aarg. :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12884 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
4edf6c043e7a9b9941db7caa3084b99aa18d91ad |
|
01-Apr-2004 |
Chris Lattner <sabre@nondot.org> |
Remove some assertions that are now bogus with the last patch I put in git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12595 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
4f303bd4a579cc567879fbd1cf6c7a928fae8210 |
|
01-Apr-2004 |
Chris Lattner <sabre@nondot.org> |
Fix PR306: Loop simplify incorrectly updates dominator information Testcase: LoopSimplify/2004-04-01-IncorrectDomUpdate.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12592 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
85ebd541faf03a00d20ce3bdaf133aa6948c64f8 |
|
16-Mar-2004 |
Chris Lattner <sabre@nondot.org> |
Fix a regression from this patch: http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20040308/013095.html Basically, this patch only updated the immediate dominatees of the header node to tell them that the preheader also dominated them. In practice, ALL dominatees of the header node are also dominated by the preheader. This fixes: LoopSimplify/2004-03-15-IncorrectDomUpdate. and PR293 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12434 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
2ef703ec429900c5b49d94d82332e7a216a2d7c4 |
|
14-Mar-2004 |
Chris Lattner <sabre@nondot.org> |
If a block is dead, dominators will not be calculated for it. Because of this loop information won't see it, and we could have unreachable blocks pointing to the non-header node of blocks in a natural loop. This isn't tidy, so have the loopsimplify pass clean it up. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12380 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
786c5646e9cd15f18a6a7938673f74b02a05adb8 |
|
13-Mar-2004 |
Chris Lattner <sabre@nondot.org> |
This little patch speeds up the loop used to update the dominator set analysis. On the testcase from GCC PR12440, which has a LOT of loops (1392 of which require preheaders to be inserted), this speeds up the loopsimplify pass from 1.931s to 0.1875s. The loop in question goes from 1.65s -> 0.0097s, which isn't bad. All of these times are a debug build. This adds a dependency on DominatorTree analysis that was not there before, but we always had dominatortree available anyway, because LICM requires both loop simplify and DT, so this doesn't add any extra analysis in practice. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12362 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
99dcc1da860d5eb4ab05fd27b55fb31f50dd8b4a |
|
06-Feb-2004 |
Chris Lattner <sabre@nondot.org> |
Fix another dominator update bug. These bugs keep getting exposed because GCSE keeps finding more code motion opportunities now that the dominators are correct! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11142 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
3e0b870def750929512ebe86e9b589fbab9d538e |
|
05-Feb-2004 |
Chris Lattner <sabre@nondot.org> |
Fix bug updating dominators git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11140 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
4f02fc28eb20f20f41c5ea148ce5058a72b55ade |
|
05-Feb-2004 |
Chris Lattner <sabre@nondot.org> |
Fix PR223: Loopsimplify incorrectly updates dominator information The problem is that the dominator update code didn't "realize" that it's possible for the newly inserted basic block to dominate anything. Because it IS possible, stuff was getting updated wrong. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11137 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
c24a076c6a22a932e4fc2b745fd748fe7ee3cb15 |
|
04-Feb-2004 |
Chris Lattner <sabre@nondot.org> |
Adjust to the new BasicBlock ctor, which requires a function parameter git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11114 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
329c1c6c949d07e3fe9722ec633b4258217fd99d |
|
08-Jan-2004 |
Chris Lattner <sabre@nondot.org> |
Improve encapsulation in the Loop and LoopInfo classes by eliminating the getSubLoops/getTopLevelLoops methods, replacing them with iterator-based accessors. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10714 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
0f98e75adff9024dcfe1d2afbfa83625d60ebaa8 |
|
19-Dec-2003 |
Chris Lattner <sabre@nondot.org> |
Generalize a special case to fix PR187 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10531 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
66ea98e85c5f9c03aac139563d7874e93dc345c6 |
|
10-Dec-2003 |
Chris Lattner <sabre@nondot.org> |
Finegrainify namespacification Fix bug: LoopSimplify/2003-12-10-ExitBlocksProblem.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10373 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
010ba10032d7c5f34c209cae1a9445776f49914a |
|
10-Dec-2003 |
Chris Lattner <sabre@nondot.org> |
Do not insert one entry PHI nodes in split exit blocks! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10348 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
108e4ab159b59a616b0868e396dc7ddc1fb48616 |
|
21-Nov-2003 |
Chris Lattner <sabre@nondot.org> |
Minor cleanups and simplifications git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10127 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
f8485c643412dbff46fe87ea2867445169a5c28e |
|
20-Nov-2003 |
Chris Lattner <sabre@nondot.org> |
Start using the nicer terminator auto-insertion API git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10111 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
2ab6a7358e7788eae43b73a79e066322ef0a55d5 |
|
13-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
Add support to the loop canonicalization pass to make it transform loops to have a SINGLE backedge. This is useful to, for example, the -indvars pass. This implements testcase LoopSimplify/single-backedge.ll and closes PR#34 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9065 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
98bf436e2e2ab463d79c54a42a46b12028905330 |
|
12-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
Rename loop preheaders pass to loop simplify git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9061 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
67a9801bc510ff2c28068361fb30ae397fd1e026 |
|
12-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
File is renamed to LoopSimplify.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9059 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
ee2c50cca57272b92cf9e0d1fb238d14d57ea1dd |
|
12-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
First step in renaming the preheaders pass to loopsimplify git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9058 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
bebd86d58eea8839691785a08917040751334083 |
|
12-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
The preheader insertion pass only depends on the CFG. Mark it as such, which allows GCCAS to only run it once. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9056 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
cf00c4ab3ba308d45d98c5ccab87362cf802facb |
|
10-Oct-2003 |
Misha Brukman <brukman+llvm@gmail.com> |
Fix spelling. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9027 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
dfa5f83c8ea9fa577c5a42407c3fd8b6c789a6dd |
|
09-Sep-2003 |
Misha Brukman <brukman+llvm@gmail.com> |
Spell `occurrence' correctly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8425 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
e6f7f61cda02e9aa8f87f84f0c91668e8a6de569 |
|
19-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Fix grammar, add comment git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7967 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.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/Transforms/Utils/LoopSimplify.cpp
|
8f6396e80fa60e4ff79ddf7d81381d726405ac45 |
|
13-May-2003 |
Chris Lattner <sabre@nondot.org> |
Fix bug: LoopPreheaders/2003-05-12-PreheaderExitOfChild.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6153 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
e408e25132b8de8c757db1e3ddcd70432dfeb24d |
|
23-Apr-2003 |
Chris Lattner <sabre@nondot.org> |
Remove unnecesary &*'s git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5872 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
6315938d68df89ea1f5c8f9424d9f3584b74bc8c |
|
28-Feb-2003 |
Chris Lattner <sabre@nondot.org> |
Fix bug I introduced yesterday :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5669 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
74cd04ea0154defa837a6d4c12bad29aae44e5b6 |
|
28-Feb-2003 |
Chris Lattner <sabre@nondot.org> |
Fix bug: LICM/2003-02-27-PreheaderExitNodeUpdate.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5667 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
9f879cfb0a93bf34818fb68e1dc209d47a7d24f3 |
|
27-Feb-2003 |
Chris Lattner <sabre@nondot.org> |
Fix bug: 2003-02-27-PreheaderExitNodeUpdate.ll by updating exit node info git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5664 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
7e7ad49c23867a5de8e15adfd946fdfa4ba68902 |
|
27-Feb-2003 |
Chris Lattner <sabre@nondot.org> |
Add a new assertion to check that stuff is happening right Ironically the exit block modification code wasn't updating the exit block information itself. Fix this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5659 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
69269ac203156ae8512c9513b75e5c7217c9ac4e |
|
27-Feb-2003 |
Chris Lattner <sabre@nondot.org> |
* Don't forget to update Loop information! * Remove bogus assertion: there may be a single outside predecessor and still need a new loop-preheader if the predecessor has multiple successors. See bug: LICM/2003-02-27-PreheaderProblem.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5655 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
dbf3cd7952736b649b4d19badb73ec6c1f9be583 |
|
27-Feb-2003 |
Chris Lattner <sabre@nondot.org> |
* Significant changes to the preheader insertion pass: - Now we perform loop exit-block splitting to ensure exit blocks are always dominated by the loop header. - We now preserve dominance frontier information - This fixes bug: LICM/2003-02-26-LoopExitNotDominated.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5652 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
a92f696b74a99325026ebbdbffd2a44317e0c10b |
|
02-Oct-2002 |
Chris Lattner <sabre@nondot.org> |
Updates to work with recent Statistic's changes: * Renamed StatisticReporter.h/cpp to Statistic.h/cpp * Broke constructor to take two const char * arguments instead of one, so that indendation can be taken care of automatically. * Sort the list by pass name when printing * Make sure to print all statistics as a group, instead of randomly when the statistics dtors are called. * Updated ProgrammersManual with new semantics. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4002 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
4d01892e36cc8ea4537b32dd71f11d767edeeef2 |
|
29-Sep-2002 |
Chris Lattner <sabre@nondot.org> |
Fix major bugs in dominator set & tree information updating git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3975 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
0bd3616b0b118b6616fabc9a16d291601b16b870 |
|
26-Sep-2002 |
Chris Lattner <sabre@nondot.org> |
Change pass name to something sane git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3946 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|
38acf9e85d25f022309372c26d54ecb7c77840f2 |
|
26-Sep-2002 |
Chris Lattner <sabre@nondot.org> |
Checkin new loop-preheader insertion pass. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3942 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/LoopSimplify.cpp
|