- Oct 31, 2009
-
-
Dan Gohman authored
clears out more information than just the stored backedge taken count. llvm-svn: 85664
-
- Oct 26, 2009
-
-
Dan Gohman authored
the loop exiting block dominates the latch block; if ScalarEvolution can prove that the trip-count is finite, that's sufficient. llvm-svn: 85165
-
- Oct 23, 2009
-
-
Dan Gohman authored
exact backedge taken count, when checking for infinite loops. This allows it to delete loops with multiple exit conditions. llvm-svn: 84952
-
- Sep 02, 2009
-
-
Chris Lattner authored
llvm-svn: 80766
-
- Jul 15, 2009
-
-
Dan Gohman authored
and use this to simplify more code. llvm-svn: 75722
-
- Jul 08, 2009
-
-
Dan Gohman authored
This way ScalarEvolution can examine the loop to determine what state it needs to update, if it chooses. llvm-svn: 75029
-
- Jul 07, 2009
-
-
Dan Gohman authored
llvm-svn: 74918
-
- Jun 22, 2009
-
-
Owen Anderson authored
llvm-svn: 73906
-
- May 06, 2009
-
-
Duncan Sands authored
the optimizers about this. For example, a readonly function with no uses cannot be removed unless it is also marked nounwind. llvm-svn: 71071
-
- May 05, 2009
-
-
Dan Gohman authored
CallbackVH, with fixes. allUsesReplacedWith need to walk the def-use chains and invalidate all users of a value that is replaced. SCEVs of users need to be recalcualted even if the new value is equivalent. Also, make forgetLoopPHIs walk def-use chains, since any SCEV that depends on a PHI should be recalculated when more information about that PHI becomes available. llvm-svn: 70927
-
- May 03, 2009
-
-
Dan Gohman authored
llvm-svn: 70661
-
- May 02, 2009
-
-
Dan Gohman authored
makes ScalarEvolution::deleteValueFromRecords, and it's code that subtly needed to be called before ReplaceAllUsesWith, unnecessary. It also makes ValueDeletionListener unnecessary. llvm-svn: 70645
-
Dan Gohman authored
deleting it. This will let ScalarEvolution be more complete about updating its records. llvm-svn: 70632
-
- Feb 24, 2009
-
-
Dan Gohman authored
to more accurately describe what it does. Expand its doxygen comment to describe what the backedge-taken count is and how it differs from the actual iteration count of the loop. Adjust names and comments in associated code accordingly. llvm-svn: 65382
-
Dan Gohman authored
llvm-svn: 65359
-
- Feb 23, 2009
-
-
Dan Gohman authored
so that ScalarEvolution doesn't hang onto a dangling Loop*, which could be a problem if another Loop happens to get allocated at the same address. llvm-svn: 65323
-
- Oct 23, 2008
-
-
Daniel Dunbar authored
LoopPass*. - Although less precise, this means they can be used in clients without RTTI (who would otherwise need to include LoopPass.h, which eventually includes things using dynamic_cast). This was the simplest solution that presented itself, but I am happy to use a better one if available. llvm-svn: 58010
-
- Sep 04, 2008
-
-
Dan Gohman authored
llvm-svn: 55779
-
- Jun 24, 2008
-
-
Dan Gohman authored
llvm-svn: 52651
-
- May 29, 2008
-
-
Owen Anderson authored
llvm-svn: 51666
-
- May 16, 2008
-
-
Owen Anderson authored
Also, use SCEV to determine the trip count of the loop, which is more powerful and accurate that Loop::getTripCount. llvm-svn: 51179
-
- May 13, 2008
-
-
Dan Gohman authored
several things that were neither in an anonymous namespace nor static but not intended to be global. llvm-svn: 51017
-
- May 08, 2008
-
-
Gordon Henriksen authored
Patch by Matthijs Kooijman! llvm-svn: 50861
-
- May 06, 2008
-
-
Owen Anderson authored
We need to update PHIs containing the exiting block, not the exit block. We really should come up with better names for these. llvm-svn: 50770
-
- Apr 30, 2008
-
-
Owen Anderson authored
llvm-svn: 50473
-
- Apr 29, 2008
-
-
Owen Anderson authored
of this was suggested by Chris. llvm-svn: 50441
-
Owen Anderson authored
llvm-svn: 50437
-
Owen Anderson authored
llvm-svn: 50436
-
Owen Anderson authored
llvm-svn: 50406
-
Owen Anderson authored
llvm-svn: 50384
-
Owen Anderson authored
llvm-svn: 50383
-
Owen Anderson authored
the trip count. llvm-svn: 50382
-