#
3997a07f |
| 31-Aug-2010 |
Owen Anderson <resistor@mac.com> |
More Chris-inspired JumpThreading fixes: use ConstantExpr to correctly constant-fold undef, and be more careful with its return value. This actually exposed an infinite recursion bug in ComputeValueK
More Chris-inspired JumpThreading fixes: use ConstantExpr to correctly constant-fold undef, and be more careful with its return value. This actually exposed an infinite recursion bug in ComputeValueKnownInPredecessors which theoretically already existed (in JumpThreading's handling of and/or of i1's), but never manifested before. This patch adds a tracking set to prevent this case.
llvm-svn: 112589
show more ...
|
#
c910acb5 |
| 30-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Re-apply r112539, being more careful to respect the return values of the constant folding methods. Additionally, use the ConstantExpr::get*() methods to simplify some constant folding.
llvm-svn: 11
Re-apply r112539, being more careful to respect the return values of the constant folding methods. Additionally, use the ConstantExpr::get*() methods to simplify some constant folding.
llvm-svn: 112550
show more ...
|
#
1ddcbbe4 |
| 30-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Revert r112539. It accidentally introduced a miscompilation.
llvm-svn: 112543
|
#
75f6037c |
| 30-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Fixes and cleanups pointed out by Chris. In general, be careful to handle 0 results from ComputeValueKnownInPredecessors (indicating undef), and re-use existing constant folding APIs.
llvm-svn: 112
Fixes and cleanups pointed out by Chris. In general, be careful to handle 0 results from ComputeValueKnownInPredecessors (indicating undef), and re-use existing constant folding APIs.
llvm-svn: 112539
show more ...
|
#
99d4cb86 |
| 27-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Fix typos in comments.
llvm-svn: 112286
|
#
6ebbd923 |
| 27-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Use LVI to eliminate conditional branches where we've tested a related condition previously. Update tests for this change. This fixes PR5652.
llvm-svn: 112270
|
#
bd2ecc7e |
| 26-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Make JumpThreading smart enough to properly thread StrSwitch when it's compiled with clang++.
llvm-svn: 112198
|
#
7c853e87 |
| 24-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Turn LVI on, previously detected failures should be fixed now.
llvm-svn: 111923
|
#
6ffa3f2a |
| 23-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Turn LVI back off, I have a testcase now.
llvm-svn: 111834
|
#
630add39 |
| 23-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Re-enable LazyValueInfo. Monitoring for failures.
llvm-svn: 111816
|
#
aac8cbb2 |
| 19-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Disable LVI while I evaluate a failure.
llvm-svn: 111551
|
#
5c87dd55 |
| 19-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Tentatively enabled LVI by default. I'll be monitoring for any failures.
llvm-svn: 111543
|
#
208636fa |
| 18-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Inform LazyValueInfo whenever a block is deleted, to avoid dangling pointer issues.
llvm-svn: 111382
|
#
3c603024 |
| 18-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
Fix PR7755: knowing something about an inval for a pred from the LHS should disable reconsidering that pred on the RHS. However, knowing something about the pred on the RHS shouldn't disable subsequ
Fix PR7755: knowing something about an inval for a pred from the LHS should disable reconsidering that pred on the RHS. However, knowing something about the pred on the RHS shouldn't disable subsequent additions on the RHS from happening.
llvm-svn: 111349
show more ...
|
#
a7aed186 |
| 06-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Reapply r110396, with fixes to appease the Linux buildbot gods.
llvm-svn: 110460
|
#
bda59bd2 |
| 06-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Revert r110396 to fix buildbots.
llvm-svn: 110410
|
#
755aceb5 |
| 05-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Don't use PassInfo* as a type identifier for passes. Instead, use the address of the static ID member as the sole unique type identifier. Clean up APIs related to this change.
llvm-svn: 110396
|
#
4674dd6c |
| 05-Aug-2010 |
Owen Anderson <resistor@mac.com> |
Give JumpThreading+LVI a long-form cl::opt so that it's easier to toggle the default.
llvm-svn: 110384
|
#
aa7f66ba |
| 26-Jul-2010 |
Owen Anderson <resistor@mac.com> |
Add an initial implementation of LazyValueInfo updating for JumpThreading. Disabled for now.
llvm-svn: 109424
|
#
a57b97e7 |
| 21-Jul-2010 |
Owen Anderson <resistor@mac.com> |
Fix batch of converting RegisterPass<> to INTIALIZE_PASS().
llvm-svn: 109045
|
#
a5fa885d |
| 12-Jul-2010 |
Gabor Greif <ggreif@gmail.com> |
cache results of operator*
llvm-svn: 108142
|
#
bbc25ff5 |
| 12-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
if jump threading is able to infer interesting values on both the LHS and RHS of an and/or instruction, don't multiply add known predecessor values. This fixes the crash on testcase from PR7498
llv
if jump threading is able to infer interesting values on both the LHS and RHS of an and/or instruction, don't multiply add known predecessor values. This fixes the crash on testcase from PR7498
llvm-svn: 108114
show more ...
|
#
329ea064 |
| 14-Jun-2010 |
Chris Lattner <sabre@nondot.org> |
jump threading can't split a critical edge from an indirectbr. This fixes PR7356.
llvm-svn: 105950
|
#
826bdf8c |
| 28-May-2010 |
Dan Gohman <gohman@apple.com> |
Move FindAvailableLoadedValue isSafeToLoadUnconditionally out of lib/Transforms/Utils and into lib/Analysis so that Analysis passes can use them.
llvm-svn: 104949
|
Revision tags: llvmorg-2.7.0 |
|
#
9ae28b14 |
| 10-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
fix PR6743, a case where we'd delete an instruction before using it in some cases.
llvm-svn: 100937
|