#
05e89735 |
| 22-Jun-2008 |
Dan Gohman <gohman@apple.com> |
Generalize createSCEV to be able to form SCEV expressions from ConstantExprs.
llvm-svn: 52615
|
#
be928e3b |
| 18-Jun-2008 |
Dan Gohman <gohman@apple.com> |
Move LSR's private isZero function to a public SCEV member function, and make use of it in several places.
llvm-svn: 52463
|
#
ed169d53 |
| 13-Jun-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Crash less. The i64 restriction in BinomialCoefficient caused some problems with code that was expecting different bit widths for different values.
Make getTruncateOrZeroExtend a method on ScalarEvo
Crash less. The i64 restriction in BinomialCoefficient caused some problems with code that was expecting different bit widths for different values.
Make getTruncateOrZeroExtend a method on ScalarEvolution, and use it.
llvm-svn: 52248
show more ...
|
Revision tags: llvmorg-2.3.0 |
|
#
3195b393 |
| 25-May-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Don't treat values as signed when looking at loop steppings in HowForToNonZero.
llvm-svn: 51560
|
#
d78c400b |
| 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.
llvm-svn: 51017
|
#
f0bdd22f |
| 06-May-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Fix typo and indentation.
llvm-svn: 50706
|
#
6145727b |
| 20-Apr-2008 |
Dale Johannesen <dalej@apple.com> |
(re)fix handling of UGT. Pointed out by Nick Lewycky.
llvm-svn: 49991
|
#
3b18762f |
| 20-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
Switch to using Simplified ConstantFP::get API.
llvm-svn: 49977
|
#
ce9dc869 |
| 18-Apr-2008 |
Dale Johannesen <dalej@apple.com> |
Fix a scalar evolution bug. Reversing everything does not work because of 0; 2>0 but -2U is also >0.
llvm-svn: 49928
|
#
5e6ce7bb |
| 14-Apr-2008 |
Dan Gohman <gohman@apple.com> |
In the special case, call the comparison function instead of manually performing the comparison. This allows the special case to work correctly even in the case where someone is experimenting with a
In the special case, call the comparison function instead of manually performing the comparison. This allows the special case to work correctly even in the case where someone is experimenting with a different comparison function :-).
llvm-svn: 49670
show more ...
|
#
80e43fa7 |
| 20-Mar-2008 |
Devang Patel <dpatel@apple.com> |
Restore isCFGOnly property of various analysis passes.
llvm-svn: 48579
|
#
718da668 |
| 19-Mar-2008 |
Devang Patel <dpatel@apple.com> |
PassInfo keep tracks whether a pass is an analysis pass or not.
llvm-svn: 48554
|
#
01d6257e |
| 25-Feb-2008 |
Evan Cheng <evan.cheng@apple.com> |
Temporarily reverting 46959.
llvm-svn: 47542
|
#
5a3db140 |
| 21-Feb-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Simplify this code, no functionality change.
llvm-svn: 47434
|
#
839adb87 |
| 21-Feb-2008 |
Nick Lewycky <nicholas@mxc.ca> |
GlobalValues are Constants, remove redundant code. Also fix typo in a comment.
llvm-svn: 47433
|
#
579f0713 |
| 20-Feb-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Unbreak build with gcc 4.3: provide missed includes and silence most annoying warnings.
llvm-svn: 47367
|
#
b0a2f951 |
| 20-Feb-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Use getConstant for ConstantInts.
llvm-svn: 47361
|
#
1c44ebcf |
| 20-Feb-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Add 'umax' similar to 'smax' SCEV. Closes PR2003.
Parse reversed smax and umax as smin and umin and express them with negative or binary-not SCEVs (which are really just subtract under the hood).
P
Add 'umax' similar to 'smax' SCEV. Closes PR2003.
Parse reversed smax and umax as smin and umin and express them with negative or binary-not SCEVs (which are really just subtract under the hood).
Parse 'xor %x, -1' as (-1 - %x).
Remove dead code (ConstantInt::get always returns a ConstantInt).
Don't use getIntegerSCEV(-1, Ty). The first value is an int, then it gets passed into a uint64_t. Instead, create the -1 directly from ConstantInt::getAllOnesValue().
llvm-svn: 47360
show more ...
|
#
0e411f65 |
| 13-Feb-2008 |
Wojciech Matyjewicz <wmatyjewicz@fastmail.fm> |
Fix typo. Thanks to Duncan for noticing.
llvm-svn: 47062
|
#
35545fd8 |
| 13-Feb-2008 |
Wojciech Matyjewicz <wmatyjewicz@fastmail.fm> |
Add comments as per review feedback.
llvm-svn: 47061
|
#
1d2c27b2 |
| 12-Feb-2008 |
Wojciech Matyjewicz <wmatyjewicz@fastmail.fm> |
Fix PR2002. Suppose n is the initial value for the induction variable (with step 1) and m is its final value. Then, the correct trip count is SMAX(m,n)-n. Previously, we used SMAX(0,m-n), but m-n m
Fix PR2002. Suppose n is the initial value for the induction variable (with step 1) and m is its final value. Then, the correct trip count is SMAX(m,n)-n. Previously, we used SMAX(0,m-n), but m-n may overflow and can't in general be interpreted as signed.
Patch by Nick Lewycky.
llvm-svn: 47007
show more ...
|
Revision tags: llvmorg-2.2.0 |
|
#
adae053b |
| 11-Feb-2008 |
Wojciech Matyjewicz <wmatyjewicz@fastmail.fm> |
If the LHS of the comparison is a loop-invariant we also want to move it to the RHS. This simple change allows to compute loop iteration count for loops with condition similar to the one in the tes
If the LHS of the comparison is a loop-invariant we also want to move it to the RHS. This simple change allows to compute loop iteration count for loops with condition similar to the one in the testcase (which seems to be quite common).
llvm-svn: 46959
show more ...
|
#
d2d9764c |
| 11-Feb-2008 |
Wojciech Matyjewicz <wmatyjewicz@fastmail.fm> |
Fix PR1798 - an error in the evaluation of SCEVAddRecExpr at an arbitrary iteration.
The patch: 1) changes SCEVSDivExpr into SCEVUDivExpr, 2) replaces PartialFact() function with BinomialCoefficien
Fix PR1798 - an error in the evaluation of SCEVAddRecExpr at an arbitrary iteration.
The patch: 1) changes SCEVSDivExpr into SCEVUDivExpr, 2) replaces PartialFact() function with BinomialCoefficient(); the computations (essentially, the division) in BinomialCoefficient() are performed with the apprioprate bitwidth necessary to avoid overflow; unsigned division is used instead of the signed one.
Computations in BinomialCoefficient() require support from the code generator for APInts. Currently, we use a hack rounding up the neccessary bitwidth to the nearest power of 2. The hack is easy to turn off in future.
One remaining issue: we assume the divisor of the binomial coefficient formula can be computed accurately using 16 bits. It means we can handle AddRecs of length up to 9. In future, we should use APInts to evaluate the divisor.
Thanks to Nicholas for cooperation!
llvm-svn: 46955
show more ...
|
#
a65951fe |
| 31-Jan-2008 |
Dan Gohman <gohman@apple.com> |
Avoid unnecessarily casting away const, fixing a FIXME.
llvm-svn: 46591
|
#
d1200b00 |
| 02-Jan-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Don't be rude, emit debugging info where asked to.
llvm-svn: 45485
|