- Nov 11, 2009
-
-
Evan Cheng authored
llvm-svn: 86761
-
Devang Patel authored
llvm-svn: 86748
-
- Nov 10, 2009
-
-
Chris Lattner authored
llvm-svn: 86739
-
Chris Lattner authored
into libanalysis and transformutils. llvm-svn: 86735
-
Chris Lattner authored
tracked down by Stephan Reiter! llvm-svn: 86726
-
Chris Lattner authored
llvm-svn: 86723
-
Chris Lattner authored
debug intrinsics, and an unconditional branch when possible. This reuses the TryToSimplifyUncondBranchFromEmptyBlock function split out of simplifycfg. llvm-svn: 86722
-
Evan Cheng authored
llvm-svn: 86715
-
Duncan Sands authored
llvm-svn: 86705
-
Duncan Sands authored
llvm-svn: 86694
-
Chris Lattner authored
llvm-svn: 86689
-
Duncan Sands authored
llvm-svn: 86683
-
Duncan Sands authored
llvm-svn: 86681
-
Victor Hernandez authored
Update computeArraySize() to use ComputeMultiple() to determine the array size associated with a malloc; also extend PerformHeapAllocSRoA() to check if the optimized malloc's arg had its highest bit set, so that it is safe for ComputeMultiple() to look through sext instructions while determining the optimized malloc's array size llvm-svn: 86676
-
Chris Lattner authored
of a computation. This fixes some infinite loops when dealing with TD that has no native types. llvm-svn: 86670
-
Nick Lewycky authored
llvm-svn: 86668
-
Nick Lewycky authored
memory just like a store" with bug fixed (partial-overwrite.ll is the regression test). llvm-svn: 86667
-
Chris Lattner authored
llvm-svn: 86666
-
Oscar Fuentes authored
llvm-svn: 86656
-
Chris Lattner authored
just one level deep. On the testcase we go from getting this: F1: ; preds = %T2 %F = and i1 true, %cond ; <i1> [#uses=1] br i1 %F, label %X, label %Y to a fully threaded: F1: ; preds = %T2 br label %Y This changes gets us to the point where we're forming (too many) switch instructions on doug's strswitch testcase. llvm-svn: 86646
-
Chris Lattner authored
llvm-svn: 86639
-
Chris Lattner authored
except that the result may not be a constant. Switch jump threading to use it so that it gets things like (X & 0) -> 0, which occur when phi preds are deleted and the remaining phi pred was a zero. llvm-svn: 86637
-
Jeffrey Yasskin authored
This patch forbids implicit conversion of DenseMap::const_iterator to DenseMap::iterator which was possible because DenseMapIterator inherited (publicly) from DenseMapConstIterator. Conversion the other way around is now allowed as one may expect. The template DenseMapConstIterator is removed and the template parameter IsConst which specifies whether the iterator is constant is added to DenseMapIterator. Actually IsConst parameter is not necessary since the constness can be determined from KeyT but this is not relevant to the fix and can be addressed later. Patch by Victor Zverovich! llvm-svn: 86636
-
Chris Lattner authored
llvm-svn: 86635
-
Chris Lattner authored
simplification, this handles the foldable fcmp x,x cases among many others. llvm-svn: 86627
-
Chris Lattner authored
llvm-svn: 86625
-
Chris Lattner authored
Simplify[IF]Cmp pieces. Add some predicates to CmpInst to determine whether a predicate is fp or int. llvm-svn: 86624
-
Chris Lattner authored
individual operands instead of taking a temporary array llvm-svn: 86619
-
Chris Lattner authored
llvm-svn: 86616
-
- Nov 09, 2009
-
-
Chris Lattner authored
simplifies instruction users of PHIs when the phi is eliminated. This will be moved to transforms/utils after some other refactoring. llvm-svn: 86603
-
Dan Gohman authored
llvm-svn: 86575
-
Dan Gohman authored
the loop. This is needed because with indirectbr it may not be possible for LoopSimplify to guarantee that all loop exit predecessors are inside the loop. This fixes PR5437. LCCSA no longer actually requires LoopSimplify form, but for now it must still have the dependency because the PassManager doesn't know how to schedule LoopSimplify otherwise. llvm-svn: 86569
-
Chris Lattner authored
it to a normal binop. Patch by Alastair Lynn, testcase by me. llvm-svn: 86524
-
Chris Lattner authored
putchar in case there is an error. llvm-svn: 86515
-
Chris Lattner authored
used by a chain of other PHIs. llvm-svn: 86503
-
Owen Anderson authored
llvm-svn: 86499
-
Owen Anderson authored
here: 1) We need to avoid processing sigma nodes as phi nodes for constraint generation. 2) We need to generate constraints for comparisons against constants properly. This includes our first working ABCD test! llvm-svn: 86498
-
Chris Lattner authored
llvm-svn: 86497
-
- Nov 08, 2009
-
-
Owen Anderson authored
graphs being produced. The cause was that we were incorrectly marking sigma instructions as processed after handling the sigma-specific constraints for them, potentially neglecting to process them as normal instructions as well. Unfortunately, the testcase that inspired this still doesn't work because of a bug in the solver, which is next on the list to debug. llvm-svn: 86486
-
Chris Lattner authored
when both the source and dest are illegal types, since it would cause the phi to grow (for example, we shouldn't transform test14b's phi to a phi on i320). This fixes an infinite loop on i686 bootstrap with phi slicing turned on, so turn it back on. llvm-svn: 86483
-