aboutsummaryrefslogtreecommitdiffstats
path: root/test/Analysis
Commit message (Collapse)AuthorAgeFilesLines
...
* Now that ScalarEvolution::print writes to the correct stream, there is Wojciech Matyjewicz2008-02-127-7/+7
| | | | | | | no need to redirect stderr into stdout. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47009 91177308-0d34-0410-b5e6-96231b3b80d8
* Change negative grep into positive one in my yesterday's testcase.Wojciech Matyjewicz2008-02-121-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47008 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR2002. Suppose n is the initial value for the induction Wojciech Matyjewicz2008-02-121-0/+16
| | | | | | | | | | | 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47007 91177308-0d34-0410-b5e6-96231b3b80d8
* If the LHS of the comparison is a loop-invariant we also want to move it Wojciech Matyjewicz2008-02-111-0/+15
| | | | | | | | | 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). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46959 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR1798 - an error in the evaluation of SCEVAddRecExpr at an Wojciech Matyjewicz2008-02-111-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | 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! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46955 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach basicaa that 'byval' arguments define a new memory location thatChris Lattner2008-01-241-0/+18
| | | | | | | | can't be aliased to other known objects. This allows us to know that byval pointer args don't alias globals, etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46315 91177308-0d34-0410-b5e6-96231b3b80d8
* Accept both %y, %x and %x, %y as valid answers.Nick Lewycky2008-01-061-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45649 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR1782, patch by Wojtek Matyjewicz!Chris Lattner2007-12-091-0/+31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44733 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug in regression tests that ignored stderr output in RUN lines. Updated ↵Tanya Lattner2007-11-283-9/+9
| | | | | | | | | tests and fixed broken run lines. XFAILed 3 arm regressions (will file bugs) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44389 91177308-0d34-0410-b5e6-96231b3b80d8
* Change grep '' to grep {}.Dan Gohman2007-11-273-3/+3
| | | | | | | Change 2>&1 | to |&. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44344 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow GVN to eliminate read-only function calls when it can detect that they ↵Owen Anderson2007-11-261-1/+1
| | | | | | are redundant. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44323 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new SCEV, SCEVSMax. This allows LLVM to analyze do-while loops.Nick Lewycky2007-11-252-0/+30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44319 91177308-0d34-0410-b5e6-96231b3b80d8
* Ding dong, the DoesntAccessMemoryFns andDuncan Sands2007-11-233-31/+33
| | | | | | | | | | OnlyReadsMemoryFns tables are dead! We get more, and more accurate, information from gcc via the readnone and readonly function attributes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44288 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach alias analysis about readnone/readonly functions.Duncan Sands2007-11-221-0/+33
| | | | | | | Based on a patch by Török Edwin. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44279 91177308-0d34-0410-b5e6-96231b3b80d8
* Create nodes for inline asm so that we don't crash looking for the node later.Nick Lewycky2007-11-221-0/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44267 91177308-0d34-0410-b5e6-96231b3b80d8
* Be more careful when transforming | to +. Patch from Wojciech Matyjewicz.Nick Lewycky2007-11-201-0/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44248 91177308-0d34-0410-b5e6-96231b3b80d8
* Reverted r44163 per requestAnton Korobeynikov2007-11-151-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44177 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix handling of overflow in loop calculation by adding new UDiv SCEV. This SCEVNick Lewycky2007-11-151-0/+24
| | | | | | | | is disabled in the sense that it will refuse to create one from a UDiv instruction, until the code is better tested. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44163 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR1774 and BasicAA/2007-11-05-SizeCrash.llChris Lattner2007-11-061-0/+34
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43756 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix for PR1741.Owen Anderson2007-10-251-0/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43326 91177308-0d34-0410-b5e6-96231b3b80d8
* Build the correct range for loops with unusual bounds. Fix from Jay Foad.Nick Lewycky2007-09-271-0/+21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42394 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert tests using "| wc -l | grep ..." to use the count script.Dan Gohman2007-08-151-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41097 91177308-0d34-0410-b5e6-96231b3b80d8
* Add reference to problem report.Nick Lewycky2007-08-071-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40889 91177308-0d34-0410-b5e6-96231b3b80d8
* This resolves a regression of BasicAA which failed to find any memory ↵Chandler Carruth2007-08-061-0/+17
| | | | | | information for overloaded intrinsics (PR1600). This resolves that issue, and improves the matching scheme to use a BitVector rather than a binary search. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40872 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the dates on these tests. It's not September yet. Thanks Reid!Nick Lewycky2007-08-062-0/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40869 91177308-0d34-0410-b5e6-96231b3b80d8
* Let scalar-evolution analyze loops with an unsigned comparison for the exitNick Lewycky2007-08-061-0/+29
| | | | | | | condition. Fixes 1597. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40867 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't assume it's safe to transform a loop just because it's dominated by anyNick Lewycky2007-08-061-0/+18
| | | | | | | comparison. Fixes bug 1598. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40866 91177308-0d34-0410-b5e6-96231b3b80d8
* update for new domtree dump formatChris Lattner2007-08-061-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40857 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach BasicAA about noalias parameter attributes, but do it correctly this time.Christopher Lamb2007-08-022-0/+27
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40711 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert overly aggressive interpretation of noaliasChristopher Lamb2007-07-311-12/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40635 91177308-0d34-0410-b5e6-96231b3b80d8
* Bunch of tests to check loop passes.Devang Patel2007-07-312-0/+34
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40629 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach BasicAA about noalias function parameters. Passes all of DejaGNU and ↵Christopher Lamb2007-07-311-0/+12
| | | | | | test-suite. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40624 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle decrementing loops properly. Fixes PR1533.Nick Lewycky2007-07-161-0/+20
| | | | | | | | | | Always pass the constant as the second parameter to HowManyLessThans. Remove obsolete "isSigned" parameter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39893 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert .cvsignore filesJohn Criswell2007-06-298-22/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37801 91177308-0d34-0410-b5e6-96231b3b80d8
* Add two test cases to cover apintification change.Zhou Sheng2007-04-262-0/+67
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36476 91177308-0d34-0410-b5e6-96231b3b80d8
* New test case.Devang Patel2007-04-211-0/+28
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36293 91177308-0d34-0410-b5e6-96231b3b80d8
* New test.Devang Patel2007-04-181-0/+692
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36235 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR1319:Reid Spencer2007-04-162-2/+3
| | | | | | | | | Remove && from the end of the lines to prevent tests from throwing run lines into the background. Also, clean up places where the same command is run multiple times by using a temporary file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36142 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR1319:Reid Spencer2007-04-161-1/+1
| | | | | | | Fix syntax of tests to ensure grep pattern is properly quoted. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36134 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR1319:Reid Spencer2007-04-164-5/+9
| | | | | | | Fix test syntax per new rules. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36133 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix this test to test what it was intended to test.Nick Lewycky2007-04-151-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36072 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR1319:Reid Spencer2007-04-1510-16/+20
| | | | | | | Upgrade to use new Tcl exec based test harness. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36066 91177308-0d34-0410-b5e6-96231b3b80d8
* Update tests for the disappearance of -idom.Owen Anderson2007-04-151-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36064 91177308-0d34-0410-b5e6-96231b3b80d8
* Changes to fix problems with "make check". Apparently you can redefineReid Spencer2007-04-142-2/+2
| | | | | | | | functions and Tcl's just tickled with that. The fix is to give the "new" test system a different interface function name. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36022 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert test cases to new llvm.exp version of llvm_runtest and fix testsReid Spencer2007-04-146-7/+13
| | | | | | | that it found to be broken. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36009 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR1319:Reid Spencer2007-04-142-2/+2
| | | | | | | Convert to use new llvm.exp version of llvm_testrun git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36008 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the llvm-runtest function much more amenable by eliminating all theReid Spencer2007-04-117-7/+7
| | | | | | | | | global variables that needed to be passed in. This makes it possible to add new global variables with only a couple changes (Makefile and llvm-dg.exp) instead of touching every single dg.exp file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35918 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix this testcase to fail if the bug were reintroduced.Nick Lewycky2007-04-081-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35776 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove DomSet completely. This concludes work on PR1171.Owen Anderson2007-04-082-16/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35775 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove use of implementation keyword.Reid Spencer2007-03-283-3/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35412 91177308-0d34-0410-b5e6-96231b3b80d8