- May 07, 2010
-
-
Dan Gohman authored
as MachineSink, but it isn't constrained by MachineInstr-level details. llvm-svn: 103257
-
- May 05, 2010
-
-
Bob Wilson authored
This fixes the compile-time regressions seen in last night's tests. llvm-svn: 103118
-
- May 04, 2010
-
-
Bob Wilson authored
indirect branches in all the predecessors. This avoids unnecessarily splitting edges in cases where load PRE is not possible anyway. Thanks to Jakub Staszak for pointing this out. llvm-svn: 103034
-
Dan Gohman authored
same, now that getConstant has overloads consistent with ConstantInt::get. llvm-svn: 102965
-
- May 03, 2010
-
-
Devang Patel authored
Patch by Jakub Staszak! llvm-svn: 102928
-
- Apr 26, 2010
-
-
Chris Lattner authored
llvm-svn: 102358
-
- Apr 24, 2010
-
-
Dan Gohman authored
that indvars may use, now that indvars is recognizing le and ge loops. llvm-svn: 102235
-
- Apr 23, 2010
-
-
Dan Gohman authored
misses an opportunity to fold add operands, but folds them after LSR has separated them out. This fixes rdar://7886751. llvm-svn: 102157
-
Chris Lattner authored
arguments are handled with a new InlineFunctionInfo class. This makes it easier to extend InlineFunction to return more info in the future. llvm-svn: 102137
-
- Apr 20, 2010
-
-
Gabor Greif authored
llvm-svn: 101899
-
Chris Lattner authored
loop unswitch, and use inst simplify instead. It is more powerful and less duplication. llvm-svn: 101874
-
Chris Lattner authored
condition we're unswitching on. In this case, don't try to simplify the second copy of the loop which may be dead or not, but is probably a constant now. This fixes PR6879 llvm-svn: 101870
-
- Apr 19, 2010
-
-
Dan Gohman authored
just ask ScalarEvolution for it on demand. This helps IVUsers be more robust in the case of expressions changing underneath it. This fixes PR6862. llvm-svn: 101819
-
- Apr 17, 2010
-
-
Eric Christopher authored
Probably the best way to know that all getOperand() calls have been handled is to replace that API instead of updating. llvm-svn: 101579
-
- Apr 16, 2010
-
-
Dan Gohman authored
callee is expected to be expanded to something else by codegen, so that normal infinitely recursive calls are still transformed. llvm-svn: 101468
-
Gabor Greif authored
with a fix for self-hosting rotate CallInst operands, i.e. move callee to the back of the operand array the motivation for this patch are laid out in my mail to llvm-commits: more efficient access to operands and callee, faster callgraph-construction, smaller compiler binary llvm-svn: 101465
-
Chris Lattner authored
llvm-svn: 101437
-
Gabor Greif authored
llvm-svn: 101434
-
Chris Lattner authored
wanted the alignment of the pointee. llvm-svn: 101432
-
Chris Lattner authored
llvm-svn: 101429
-
Chris Lattner authored
place. llvm-svn: 101427
-
Chris Lattner authored
ConvertToScalarInfo. llvm-svn: 101425
-
Gabor Greif authored
llvm-svn: 101423
-
Chris Lattner authored
CanConvertToScalar/MergeInType. Eliminate a pointless LLVMContext argument to MergeInType. llvm-svn: 101422
-
- Apr 15, 2010
-
-
Chris Lattner authored
llvm-svn: 101405
-
Gabor Greif authored
with a fix rotate CallInst operands, i.e. move callee to the back of the operand array the motivation for this patch are laid out in my mail to llvm-commits: more efficient access to operands and callee, faster callgraph-construction, smaller compiler binary llvm-svn: 101397
-
Dan Gohman authored
llvm-svn: 101376
-
Gabor Greif authored
llvm-svn: 101368
-
Gabor Greif authored
of the operand array the motivation for this patch are laid out in my mail to llvm-commits: more efficient access to operands and callee, faster callgraph-construction, smaller compiler binary llvm-svn: 101364
-
- Apr 14, 2010
-
-
Gabor Greif authored
llvm-svn: 101253
-
Gabor Greif authored
llvm-svn: 101250
-
- Apr 13, 2010
-
-
Owen Anderson authored
llvm-svn: 101125
-
Owen Anderson authored
llvm-svn: 101117
-
Dan Gohman authored
numerator is an induction variable. For example, with code like this: for (i=0;i<n;++i) x[i%n] = 0; IndVarSimplify will now recognize that i is always less than n inside the loop, and eliminate the remainder. llvm-svn: 101113
-
- Apr 12, 2010
-
-
Dan Gohman authored
expression is a UDiv and it doesn't appear that the UDiv came from the user's source. ScalarEvolution has recently figured out how to compute a tripcount expression for the inner loop in SingleSource/Benchmarks/Shootout/sieve.c, using a udiv. Emitting a udiv instruction dramatically slows down the enclosing loop. llvm-svn: 101068
-
Dan Gohman authored
llvm-svn: 101033
-
Dan Gohman authored
a ScalarEvolution bug with overflow handling is fixed, the normal analysis code will automatically decline to operate on the icmp instructions which are responsible for the loop exit. llvm-svn: 101032
-
Dan Gohman authored
instead of deleting just the user. This makes it more consistent with other code in IndVarSimplify, and theoretically can eliminate more users earlier. llvm-svn: 101027
-
Dan Gohman authored
the loop exit test. This usually doesn't come up for a variety of reasons, but it isn't impossible, so make IndVarSimplify handle it conservatively. llvm-svn: 101008
-
Dan Gohman authored
llvm-svn: 101002
-