Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Change 'while' loop to 'do' loop. | Wojciech Matyjewicz | 2008-06-14 | 1 | -4/+11 | |
| | | | | | | | | | Add a safety measure. It isn't safe to assume in ScalarEvolutionExpander that all loops are in canonical form (but it should be safe for loops that have AddRecs). xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm-svn: 52275 | |||||
* | Crash less. The i64 restriction in BinomialCoefficient caused some problems | Nick Lewycky | 2008-06-13 | 1 | -24/+30 | |
| | | | | | | | | with code that was expecting different bit widths for different values. Make getTruncateOrZeroExtend a method on ScalarEvolution, and use it. llvm-svn: 52248 | |||||
* | Expose a public interface to this pass. | Chris Lattner | 2008-06-05 | 1 | -40/+12 | |
| | | | | llvm-svn: 52029 | |||||
* | Let libcall semantics decide whether it knows about functions | Chris Lattner | 2008-06-05 | 1 | -2/+2 | |
| | | | | | | with definitions or not. llvm-svn: 52028 | |||||
* | Update comments and documentation to reflect that GCSE and ValueNumbering are | Matthijs Kooijman | 2008-06-05 | 1 | -0/+4 | |
| | | | | | | deprecated by the GVN and GVNPRE passes. llvm-svn: 51983 | |||||
* | Replace two manual loops with calls to CallSite::hasArguments (no functional ↵ | Matthijs Kooijman | 2008-06-04 | 1 | -3/+1 | |
| | | | | | | changes). llvm-svn: 51947 | |||||
* | Add #includes required by GCC 4.3, thanks for Zhongxing Xu | Chris Lattner | 2008-06-04 | 1 | -0/+1 | |
| | | | | | | for reporting this. llvm-svn: 51926 | |||||
* | Remove unneeded code I added. | Chris Lattner | 2008-06-02 | 1 | -6/+3 | |
| | | | | llvm-svn: 51878 | |||||
* | Fixes PR2395. Looking for a constant in a GEP tail (when the first GEP | Wojciech Matyjewicz | 2008-06-02 | 1 | -1/+7 | |
| | | | | | | | | is longer than the second one) should stop after finding one. Added break instruction guarantees it. It also changes difference between offsets to absolute value of this difference in the condition. llvm-svn: 51875 | |||||
* | move CannotBeNegativeZero to ValueTracking. Simplify some signbit comparisons. | Chris Lattner | 2008-06-02 | 1 | -0/+50 | |
| | | | | llvm-svn: 51864 | |||||
* | move ComputeMaskedBits, MaskedValueIsZero, and ComputeNumSignBits | Chris Lattner | 2008-06-02 | 1 | -0/+709 | |
| | | | | | | | out of instcombine into a new file in libanalysis. This also teaches ComputeNumSignBits about the number of sign bits in a constantint. llvm-svn: 51863 | |||||
* | Remember to update the reverse non-local cache when cleaning up dirty ↵ | Owen Anderson | 2008-06-01 | 1 | -0/+5 | |
| | | | | | | entries. This fixes PR2397. llvm-svn: 51846 | |||||
* | Make ping more aggressive in finding nonlocal caching errors. | Owen Anderson | 2008-06-01 | 1 | -0/+3 | |
| | | | | llvm-svn: 51845 | |||||
* | Fix a typo in a comment. | Dan Gohman | 2008-05-30 | 1 | -1/+1 | |
| | | | | llvm-svn: 51718 | |||||
* | Fix a copy+paste error in a comment. | Dan Gohman | 2008-05-30 | 1 | -1/+1 | |
| | | | | llvm-svn: 51717 | |||||
* | Add newline at end of file. | Owen Anderson | 2008-05-29 | 1 | -1/+1 | |
| | | | | llvm-svn: 51701 | |||||
* | Force postdom to be linked into opt and bugpoint, even though it is no ↵ | Owen Anderson | 2008-05-29 | 1 | -0/+8 | |
| | | | | | | longer used by any passes. llvm-svn: 51686 | |||||
* | convert another operand loop to iterator formulation | Gabor Greif | 2008-05-29 | 1 | -3/+3 | |
| | | | | llvm-svn: 51661 | |||||
* | Use Function::getEntryBlock instead of Function::begin, for clarity. | Dan Gohman | 2008-05-27 | 1 | -1/+1 | |
| | | | | llvm-svn: 51613 | |||||
* | Print debug output when any edge becomes executable, including | Dan Gohman | 2008-05-27 | 1 | -3/+3 | |
| | | | | | | the first visited edge. llvm-svn: 51612 | |||||
* | Fix some constructs that gcc-4.4 warns about. | Duncan Sands | 2008-05-27 | 1 | -1/+2 | |
| | | | | llvm-svn: 51591 | |||||
* | Don't treat values as signed when looking at loop steppings in HowForToNonZero. | Nick Lewycky | 2008-05-25 | 1 | -2/+2 | |
| | | | | llvm-svn: 51560 | |||||
* | "ret (constexpr)" can't be folded into a Constant. Add a method to | Nick Lewycky | 2008-05-25 | 1 | -16/+45 | |
| | | | | | | | | | | Analysis/ConstantFolding to fold ConstantExpr's, then make instcombine use it to try to use targetdata to fold constant expressions on void instructions. Also extend the icmp(inttoptr, inttoptr) folding to handle the case where int size != ptr size. llvm-svn: 51559 | |||||
* | Use isSingleValueType instead of isFirstClassType to | Dan Gohman | 2008-05-22 | 1 | -1/+1 | |
| | | | | | | exclude struct and array types. llvm-svn: 51452 | |||||
* | transform more loops to iterator form, detabify | Gabor Greif | 2008-05-22 | 2 | -7/+8 | |
| | | | | llvm-svn: 51436 | |||||
* | Rewrite operand loops to use iterators. This shrinks .o file (at gcc4.0.1 ↵ | Gabor Greif | 2008-05-22 | 1 | -4/+5 | |
| | | | | | | -O3 x86) substantially (>500 bytes). Reason still unknown. llvm-svn: 51423 | |||||
* | Free and vaarg are not really volatile. | Chris Lattner | 2008-05-22 | 1 | -9/+2 | |
| | | | | llvm-svn: 51407 | |||||
* | suppress gcc3.4.6's <no value returned> warnings | Gabor Greif | 2008-05-21 | 1 | -0/+2 | |
| | | | | llvm-svn: 51372 | |||||
* | Fix PR2346 by marking vaarg as volatile so that licm doesn't try to | Chris Lattner | 2008-05-20 | 1 | -1/+4 | |
| | | | | | | hoist them. llvm-svn: 51356 | |||||
* | Add a bool to isEdgeFeasible that tells it whether to treat unknown | Chris Lattner | 2008-05-20 | 1 | -7/+19 | |
| | | | | | | value as undef or untracked. llvm-svn: 51295 | |||||
* | API change for {BinaryOperator|CmpInst|CastInst}::create*() --> Create. ↵ | Gabor Greif | 2008-05-16 | 1 | -4/+4 | |
| | | | | | | Legacy interfaces will be in place for some time. (Merge from use-diet branch.) llvm-svn: 51200 | |||||
* | Use static and anonymous namespaces consistently with other passes. | Dan Gohman | 2008-05-15 | 1 | -8/+8 | |
| | | | | llvm-svn: 51156 | |||||
* | Fix memdep's handling of invokes when finding the dependency of another call | Owen Anderson | 2008-05-13 | 1 | -1/+1 | |
| | | | | | | instruction. This fixes some Ada miscompiles reported in PR2324. llvm-svn: 51069 | |||||
* | Clean up the use of static and anonymous namespaces. This turned up | Dan Gohman | 2008-05-13 | 18 | -136/+143 | |
| | | | | | | | several things that were neither in an anonymous namespace nor static but not intended to be global. llvm-svn: 51017 | |||||
* | prune #includes. | Chris Lattner | 2008-05-12 | 1 | -3/+0 | |
| | | | | llvm-svn: 50962 | |||||
* | Add a new SparsePropagation analysis utility, which allows you to do | Chris Lattner | 2008-05-12 | 1 | -0/+320 | |
| | | | | | | | | SCCP like sparse lattice analysis with relative ease. Just pick your lattice function and implement the transfer function and you're good. Just make sure you don't break monotonicity ;-) llvm-svn: 50961 | |||||
* | put LibCallAliasAnalysis into anonymous namespace to avoid | Torok Edwin | 2008-05-09 | 1 | -1/+1 | |
| | | | | | | clashes on ::X llvm-svn: 50912 | |||||
* | Remove dead return. Thanks to Bill for the review! | Chris Lattner | 2008-05-08 | 1 | -2/+0 | |
| | | | | llvm-svn: 50863 | |||||
* | Add support for constant folding the 'offsetof' pattern even if the | Chris Lattner | 2008-05-08 | 1 | -16/+23 | |
| | | | | | | base is not zero. This fixes test/C++Frontend/2008-05-07-CrazyOffsetOf.cpp llvm-svn: 50840 | |||||
* | Add a new LibCallAliasAnalysis pass, which is parameterized | Chris Lattner | 2008-05-07 | 1 | -0/+169 | |
| | | | | | | | | | | by an instance of LibCallInfo to provide mod/ref info of standard library functions. This is powerful enough to say that 'sqrt' is readonly except that it modifies errno, or that "printf doesn't store to memory unless the %n constraint is present" etc. llvm-svn: 50827 | |||||
* | Add a new interface for describing the behavior of library calls. This | Chris Lattner | 2008-05-07 | 1 | -0/+65 | |
| | | | | | | | | | Currently is sufficient to describe mod/ref behavior but will hopefully eventually be extended for other purposes. This isn't used by anything yet. llvm-svn: 50820 | |||||
* | Fix typo and indentation. | Nick Lewycky | 2008-05-06 | 1 | -2/+2 | |
| | | | | llvm-svn: 50706 | |||||
* | Make several variable declarations static. | Dan Gohman | 2008-05-06 | 4 | -13/+14 | |
| | | | | llvm-svn: 50696 | |||||
* | Remove uses of llvm/System/IncludeFile.h that are no longer needed. | Dan Gohman | 2008-05-06 | 3 | -9/+0 | |
| | | | | llvm-svn: 50695 | |||||
* | Implement destructor for PostDominatorTree to eliminate a memory leak. | Torok Edwin | 2008-05-03 | 1 | -0/+5 | |
| | | | | llvm-svn: 50607 | |||||
* | Add assert. | Devang Patel | 2008-05-02 | 1 | -0/+1 | |
| | | | | llvm-svn: 50596 | |||||
* | Fix the way AliasSet::print prints "may alias". | Dan Gohman | 2008-04-21 | 1 | -1/+1 | |
| | | | | llvm-svn: 50051 | |||||
* | Fix a "large integer implicitly truncated to unsigned type" | Duncan Sands | 2008-04-21 | 1 | -1/+1 | |
| | | | | | | warning. llvm-svn: 50033 | |||||
* | (re)fix handling of UGT. Pointed out by Nick Lewycky. | Dale Johannesen | 2008-04-20 | 1 | -1/+2 | |
| | | | | llvm-svn: 49991 | |||||
* | Switch to using Simplified ConstantFP::get API. | Chris Lattner | 2008-04-20 | 2 | -13/+11 | |
| | | | | llvm-svn: 49977 |