- Oct 25, 2007
-
-
Evan Cheng authored
llvm-svn: 43356
-
Evan Cheng authored
and the compaison is against a constant value, try eliminate the stride by moving the compare instruction to another stride and change its constant operand accordingly. e.g. loop: ... v1 = v1 + 3 v2 = v2 + 1 if (v2 < 10) goto loop => loop: ... v1 = v1 + 3 if (v1 < 30) goto loop llvm-svn: 43336
-
- Oct 24, 2007
-
-
Chris Lattner authored
llvm-svn: 43305
-
Chris Lattner authored
implementing cases related to PR1738. llvm-svn: 43289
-
- Oct 22, 2007
-
-
Dan Gohman authored
- Avoid attempting stride-reuse in the case that there are users that aren't addresses. In that case, there will be places where the multiplications won't be folded away, so it's better to try to strength-reduce them. - Several SSE intrinsics have operands that strength-reduction can treat as addresses. The previous item makes this more visible, as any non-address use of an IV can inhibit stride-reuse. - Make ValidStride aware of whether there's likely to be a base register in the address computation. This prevents it from thinking that things like stride 9 are valid on x86 when the base register is already occupied. Also, XFAIL the 2007-08-10-LEA16Use32.ll test; the new logic to avoid stride-reuse elimintes the LEA in the loop, so the test is no longer testing what it was intended to test. llvm-svn: 43231
-
Dan Gohman authored
SCEV subclasses to being non-static member functions of the ScalarEvolution class. llvm-svn: 43224
-
Anton Korobeynikov authored
- enable phi instructions demotion to stack - create alloca instructions in the entry block llvm-svn: 43208
-
- Oct 18, 2007
-
-
Devang Patel authored
Instead of loading small global string from memory, use integer constant. llvm-svn: 43148
-
Owen Anderson authored
llvm-svn: 43147
-
Evan Cheng authored
llvm-svn: 43103
-
- Oct 17, 2007
-
-
Devang Patel authored
Apply "Instead of loading small c string constant, use integer constant directly" transformation while processing load instruction. llvm-svn: 43070
-
Devang Patel authored
llvm-svn: 43055
-
- Oct 15, 2007
-
-
Devang Patel authored
llvm-svn: 42985
-
- Oct 12, 2007
-
-
Devang Patel authored
Do not filter memmove. llvm-svn: 42930
-
Chris Lattner authored
llvm-svn: 42920
-
Gabor Greif authored
llvm-svn: 42892
-
Chris Lattner authored
Fix DecomposeSimpleLinearExpr to handle simple constants better. Don't nuke gep(bitcast(allocation)) if the bitcast(allocation) will fold the allocation. This fixes PR1728 and Instcombine/malloc3.ll llvm-svn: 42891
-
- Oct 11, 2007
-
-
Devang Patel authored
llvm-svn: 42864
-
- Oct 09, 2007
-
-
Devang Patel authored
Do not walk invalid iterator. llvm-svn: 42812
-
- Oct 06, 2007
-
-
Devang Patel authored
unswitch when frontier includes basic blocks that are not inside loop. llvm-svn: 42654
-
- Oct 03, 2007
-
-
Devang Patel authored
llvm-svn: 42591
-
Devang Patel authored
llvm-svn: 42590
-
Dan Gohman authored
of comparing begin() and end(). llvm-svn: 42585
-
Dale Johannesen authored
llvm-svn: 42582
-
- Oct 02, 2007
-
-
Dale Johannesen authored
llvm-svn: 42508
-
- Oct 01, 2007
-
-
Devang Patel authored
Relax unsafe use check. If there is one unconditional use inside the loop then it is safe to promote value even if there is another conditional use inside the loop. llvm-svn: 42493
-
- Sep 28, 2007
-
-
Dale Johannesen authored
Fixes a SWB crash. llvm-svn: 42422
-
- Sep 25, 2007
-
-
Devang Patel authored
This fixes PR714. llvm-svn: 42309
-
Devang Patel authored
llvm-svn: 42306
-
Devang Patel authored
doh.. llvm-svn: 42300
-
Devang Patel authored
for (i=A; i<N; i++) { if (i < X && i > Y) do_something(); } is transformed into U=min(N,X); L=max(A,Y); for (i=L;i<U;i++) do_somethihg(); llvm-svn: 42299
-
- Sep 24, 2007
-
-
Devang Patel authored
llvm-svn: 42270
-
Dan Gohman authored
llvm-svn: 42262
-
- Sep 21, 2007
-
-
Devang Patel authored
llvm-svn: 42209
-
Owen Anderson authored
speedup for GVN. llvm-svn: 42185
-
Devang Patel authored
llvm-svn: 42180
-
Devang Patel authored
llvm-svn: 42178
-
- Sep 20, 2007
-
-
Nick Lewycky authored
llvm-svn: 42157
-
- Sep 19, 2007
-
-
Devang Patel authored
llvm-svn: 42149
-
Duncan Sands authored
llvm-svn: 42132
-