[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-06-24 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.80 - 1.81 --- Log message: Fix value ranges. --- Diffs of the changes: (+1 -1) PredicateSimplifier.cpp |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index:

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-06-23 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.78 - 1.79 --- Log message: Remove use of ETForest. Also cleaned up issues around unreachable basic blocks, and optimizing within one basic block. --- Diffs of the changes: (+326 -156)

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-06-23 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.79 - 1.80 --- Log message: Remove tabs. --- Diffs of the changes: (+2 -2) PredicateSimplifier.cpp |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Index:

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-06-04 Thread Bill Wendling
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.77 - 1.78 --- Log message: Patches by Chuck Rose to unbreak V Studio builds. Thanks Chuck! --- Diffs of the changes: (+15 -0) PredicateSimplifier.cpp | 15 +++ 1 files changed, 15

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-04-26 Thread Zhou Sheng
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.70 - 1.71 --- Log message: Using APInt more efficiently. --- Diffs of the changes: (+4 -5) PredicateSimplifier.cpp |9 - 1 files changed, 4 insertions(+), 5 deletions(-) Index:

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-04-24 Thread Owen Anderson
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.69 - 1.70 --- Log message: Undo my previous changes. Since my approach to this problem is being revised, this approach is no longer appropriate. --- Diffs of the changes: (+31 -32) PredicateSimplifier.cpp

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-04-21 Thread Owen Anderson
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.68 - 1.69 --- Log message: Make PredicateSimplifier not use DominatorTree. --- Diffs of the changes: (+32 -31) PredicateSimplifier.cpp | 63 1 files

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-04-18 Thread Zhou Sheng
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.67 - 1.68 --- Log message: Make the operations of APInt variables more efficient. --- Diffs of the changes: (+21 -27) PredicateSimplifier.cpp | 48 +--- 1

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-04-07 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.65 - 1.66 --- Log message: Add support for cast instructions. --- Diffs of the changes: (+75 -17) PredicateSimplifier.cpp | 92 +++- 1 files changed, 75

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-04-06 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.61 - 1.62 --- Log message: Strengthen icmp snuggling by doing 'compare-or-equal-to' to 'compare' first and then range testing second. --- Diffs of the changes: (+23 -16) PredicateSimplifier.cpp | 39

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-04-06 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.62 - 1.63 --- Log message: Use TargetData to find the size of a type. --- Diffs of the changes: (+34 -13) PredicateSimplifier.cpp | 47 ++- 1 files changed, 34

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-04-06 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.63 - 1.64 --- Log message: Cleanup. Refactor out the applying of value ranges to its own method. --- Diffs of the changes: (+35 -30) PredicateSimplifier.cpp | 65

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-04-06 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.64 - 1.65 --- Log message: Support NE inequality in ValueRanges. --- Diffs of the changes: (+58 -3) PredicateSimplifier.cpp | 61 +--- 1 files changed, 58

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-03-21 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.60 - 1.61 --- Log message: Fix broken optimization disabled by a logic bug. Analyze GEPs. If the indices are all zero, transfer whether the pointer is known to be not null through the GEP. Add a few more

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-03-18 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.59 - 1.60 --- Log message: Clean up this code and fix subtract miscompile. --- Diffs of the changes: (+22 -18) PredicateSimplifier.cpp | 40 ++-- 1 files changed, 22

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-03-17 Thread Anton Korobeynikov
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.57 - 1.58 --- Log message: Silence warning --- Diffs of the changes: (+2 -2) PredicateSimplifier.cpp |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Index:

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-03-17 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.58 - 1.59 --- Log message: Propagate ValueRanges across equality. Add some more micro-optimizations: x * 0 = 0, a - x = a -- x = 0. --- Diffs of the changes: (+157 -65) PredicateSimplifier.cpp | 222

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-03-15 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.56 - 1.57 --- Log message: Add more comments and update to new asm syntax. Add new micro-optimizations. Add icmp predicate snuggling. Given %x ULT 4, icmp ugt %x, 2 becomes icmp eq %x, 3. This doesn't apply

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-03-10 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.55 - 1.56 --- Log message: Add value ranges. Currently inefficient in both execution time and optimization power. --- Diffs of the changes: (+397 -219) PredicateSimplifier.cpp | 616

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-03-02 Thread Reid Spencer
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.52 - 1.53 --- Log message: APIntify this pass. --- Diffs of the changes: (+36 -28) PredicateSimplifier.cpp | 64 +++- 1 files changed, 36 insertions(+), 28

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-03-02 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.53 - 1.54 --- Log message: Translate bit operations to English. --- Diffs of the changes: (+2 -1) PredicateSimplifier.cpp |3 ++- 1 files changed, 2 insertions(+), 1 deletion(-) Index:

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-02-04 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.51 - 1.52 --- Log message: Fix indenting, remove tabs. Learn from sext and zext. The destination value falls within the range of the source type. Generalize properties regarding constant ints. Get smarter

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-01-16 Thread Reid Spencer
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.48 - 1.49 --- Log message: For PR1094: http://llvm.org/PR1094 : Adjust the use of SetVector for changes in SetVector's interface. Patch by Gordon Henriksen. --- Diffs of the changes: (+4 -4)

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-01-15 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.47 - 1.48 --- Log message: Don't print address of ETNode. Print the DFSNumIn which uniquely identifies the basic block and is stable across runs in gdb or valgrind. Make Node::update handle edges which

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-01-11 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.44 - 1.45 --- Log message: Clean up logic after ConstantBool removal. --- Diffs of the changes: (+14 -20) PredicateSimplifier.cpp | 34 ++ 1 files changed, 14

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2007-01-10 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.41 - 1.42 --- Log message: Quiet compiler warning. The only reason the function is marked virtual is so that it can be called from inside a debugger. --- Diffs of the changes: (+2 -0)

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-12-19 Thread Chris Lattner
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.38 - 1.39 --- Log message: Convert more Statistic's over to STATISTIC --- Diffs of the changes: (+4 -7) PredicateSimplifier.cpp | 11 --- 1 files changed, 4 insertions(+), 7 deletions(-) Index:

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-12-06 Thread Chris Lattner
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.36 - 1.37 --- Log message: add missing #include --- Diffs of the changes: (+1 -0) PredicateSimplifier.cpp |1 + 1 files changed, 1 insertion(+) Index:

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-12-01 Thread Jeff Cohen
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.34 - 1.35 --- Log message: Unbreak VC++ build. --- Diffs of the changes: (+7 -7) PredicateSimplifier.cpp | 14 +++--- 1 files changed, 7 insertions(+), 7 deletions(-) Index:

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-11-05 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.31 - 1.32 --- Log message: Remove commented line from earlier debugging. --- Diffs of the changes: (+0 -2) PredicateSimplifier.cpp |2 -- 1 files changed, 2 deletions(-) Index:

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-11-05 Thread Jeff Cohen
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.32 - 1.33 --- Log message: Unbreak VC++ build. --- Diffs of the changes: (+3 -3) PredicateSimplifier.cpp |6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) Index:

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-10-25 Thread Chris Lattner
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.26 - 1.27 --- Log message: hide symbols properly --- Diffs of the changes: (+1 -1) PredicateSimplifier.cpp |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index:

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-10-25 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.27 - 1.28 --- Log message: Resurrect r1.25. Fix and comment the or, and and xor transformations. --- Diffs of the changes: (+154 -117) PredicateSimplifier.cpp | 271

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-10-25 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.28 - 1.29 --- Log message: Fix 2006-10-25-AddSetCC. A relational operator (like setlt) can never produce an EQ property. --- Diffs of the changes: (+46 -27) PredicateSimplifier.cpp | 73

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-10-23 Thread Chris Lattner
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.25 - 1.26 --- Log message: Revert back to r1.21, which was the last revision of predsimplify that passes llvm-gcc bootstrap. --- Diffs of the changes: (+109 -134) PredicateSimplifier.cpp | 243

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-10-22 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.23 - 1.24 --- Log message: Fix similar missing optimization opportunity in XOR. --- Diffs of the changes: (+22 -13) PredicateSimplifier.cpp | 35 ++- 1 files changed, 22

Re: [llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-10-22 Thread Reid Spencer
Nick, ... On Sun, 2006-10-22 at 16:38 -0500, Nick Lewycky wrote: Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.22 - 1.23 --- Log message: Whoops! Add missing NULL check. --- Diffs of the changes: (+1 -0) PredicateSimplifier.cpp |1 +

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-10-22 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.22 - 1.23 --- Log message: Whoops! Add missing NULL check. --- Diffs of the changes: (+1 -0) PredicateSimplifier.cpp |1 + 1 files changed, 1 insertion(+) Index:

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-10-22 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.24 - 1.25 --- Log message: Remove the Backwards operation. Resolving now works at the time when a property is added by running through the list of uses of the value and adding resolved properties to the

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-10-11 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.19 - 1.20 --- Log message: Replace custom dispatch code with two uses of InstVisitor. Improves compile-time performance. --- Diffs of the changes: (+113 -93) PredicateSimplifier.cpp | 206

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-10-03 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.16 - 1.17 --- Log message: Move break-crit-edges before the predicate simplifier. Allows us to optimize in more cases. --- Diffs of the changes: (+3 -7) PredicateSimplifier.cpp | 10 +++--- 1 files

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-10-03 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.17 - 1.18 --- Log message: Simplify, now that predsimplify depends on break-crit-edges. Fix SwitchInst where dest-block is the same as one of the cases. --- Diffs of the changes: (+8 -26)

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-10-03 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.18 - 1.19 --- Log message: Simplify logic further. Ensure that we copy KnownProperties before calling visitBasicBlock, else we may leak properties into blocks where they don't belong. --- Diffs of the

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-09-20 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.11 - 1.12 --- Log message: Use a total ordering to compare instructions. Fixes infinite loop in resolve(). --- Diffs of the changes: (+101 -87) PredicateSimplifier.cpp | 188

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-09-20 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.12 - 1.13 --- Log message: Once we're down to setcc type constant1, constant2, at least come up with the right answer. --- Diffs of the changes: (+14 -18) PredicateSimplifier.cpp | 32

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-09-18 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.10 - 1.11 --- Log message: Walk down the dominator tree instead of the control flow graph. That means that we can't modify the CFG any more, at least not until it's possible to update the dominator tree (PR217:

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-09-13 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.7 - 1.8 --- Log message: Erase dead instructions. --- Diffs of the changes: (+3 -2) PredicateSimplifier.cpp |5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) Index:

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-09-13 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.8 - 1.9 --- Log message: Fix unionSets so that it can merge correctly. --- Diffs of the changes: (+34 -22) PredicateSimplifier.cpp | 56 +--- 1 files changed,

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-09-13 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.9 - 1.10 --- Log message: Add some more consistency checks. --- Diffs of the changes: (+20 -1) PredicateSimplifier.cpp | 21 - 1 files changed, 20 insertions(+), 1 deletion(-)

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-09-11 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.6 - 1.7 --- Log message: Skip the linear search if the answer is already known. --- Diffs of the changes: (+22 -20) PredicateSimplifier.cpp | 42 ++ 1 files

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-09-09 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.5 - 1.6 --- Log message: Replace EquivalenceClasses with a custom-built data structure. Many common operations (like findProperties) should be faster, at the expense of unionSets being slower in cases that are

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-09-02 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.4 - 1.5 --- Log message: Improve handling of SelectInst. Reorder operations to remove duplicated work. Fix to leave floating-point types out of the optimization. Add tests to predsimplify.ll for SwitchInst and

[llvm-commits] CVS: llvm/lib/Transforms/Scalar/PredicateSimplifier.cpp

2006-08-30 Thread Nick Lewycky
Changes in directory llvm/lib/Transforms/Scalar: PredicateSimplifier.cpp updated: 1.2 - 1.3 --- Log message: Properties where both Values weren't in the union (as being equal to another Value) weren't being found by findProperties. This fixes predsimplify.ll test6, a missed optimization