aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Analysis
Commit message (Collapse)AuthorAgeFilesLines
* wrap a long lineChris Lattner2005-09-281-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23507 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new getLoopLatch() method.Chris Lattner2005-09-121-1/+25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23315 91177308-0d34-0410-b5e6-96231b3b80d8
* floor/ceil don't read/write memory. This allows gcse to eliminate 6 callsChris Lattner2005-08-241-0/+2
| | | | | | | in mesa. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23015 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix Transforms/LoopStrengthReduce/2005-08-15-AddRecIV.llChris Lattner2005-08-161-2/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22797 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach LLVM to know how many times a loop executes when constructed withChris Lattner2005-08-151-2/+110
| | | | | | | a < expression, e.g.: for (i = m; i < n; ++i) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22793 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix an obvious oopsChris Lattner2005-08-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22742 91177308-0d34-0410-b5e6-96231b3b80d8
* implement two helper methodsChris Lattner2005-08-091-0/+28
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22736 91177308-0d34-0410-b5e6-96231b3b80d8
* * Unbreak optimized build (noticed by Eric van Riet Paap)Misha Brukman2005-08-041-3/+5
| | | | | | | * Comment #endif clauses for readability git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22646 91177308-0d34-0410-b5e6-96231b3b80d8
* add support for Graphviz when viewing CFGsChris Lattner2005-08-031-0/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22620 91177308-0d34-0410-b5e6-96231b3b80d8
* Break SCEVExpander out of IndVarSimplify into its own .h/.cpp file so thatNate Begeman2005-07-301-0/+105
| | | | | | | other passes may use it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22557 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate all remaining tabs and trailing spaces.Jeff Cohen2005-07-271-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22523 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove glibc specific functions, and mark a couple as C99Andrew Lenharth2005-07-111-3/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22384 91177308-0d34-0410-b5e6-96231b3b80d8
* because on alpha:Andrew Lenharth2005-07-111-0/+1
| | | | | | | | | # define errno (*__errno_location ()) *shakes head git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22383 91177308-0d34-0410-b5e6-96231b3b80d8
* the correct fix was to fix AliasAnalysis.getModRefInfoAndrew Lenharth2005-06-201-4/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22268 91177308-0d34-0410-b5e6-96231b3b80d8
* prevent GCSE from forwarding stores to loads around vaarg. This is uggly, ↵Andrew Lenharth2005-06-201-0/+4
| | | | | | and I am trying to fix the AliasInfo, as it should catch the problem instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22266 91177308-0d34-0410-b5e6-96231b3b80d8
* core changes for varargsAndrew Lenharth2005-06-182-10/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22254 91177308-0d34-0410-b5e6-96231b3b80d8
* By definition, 'tail' calls cannot access the stack frame of their caller.Chris Lattner2005-05-081-0/+6
| | | | | | | | Expose this as a simple form of mod/ref information. This implements BasicAA/tailcall-modref.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21796 91177308-0d34-0410-b5e6-96231b3b80d8
* These intrinsics do not access memoryChris Lattner2005-05-061-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21718 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove extra blank lineMisha Brukman2005-05-051-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21706 91177308-0d34-0410-b5e6-96231b3b80d8
* Add llvm.sqrt intrinsic, patch contributed by Morten OfstadChris Lattner2005-04-301-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21627 91177308-0d34-0410-b5e6-96231b3b80d8
* These functions can set errno!Chris Lattner2005-04-281-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21609 91177308-0d34-0410-b5e6-96231b3b80d8
* Make interval partition print correctly, patch contributed byChris Lattner2005-04-261-2/+2
| | | | | | | Vladimir Prus! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21566 91177308-0d34-0410-b5e6-96231b3b80d8
* Correctly handle global-argument aliases induced in mainChris Lattner2005-04-251-2/+30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21537 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't mess up SCC traversal when a node has null edges out of it.Chris Lattner2005-04-251-5/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21536 91177308-0d34-0410-b5e6-96231b3b80d8
* Propagate eq sets through the bu graphs to the cbu and eq graphs, fixingChris Lattner2005-04-231-0/+1
| | | | | | | a crash of the sfv on 188.ammp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21478 91177308-0d34-0410-b5e6-96231b3b80d8
* Malloc/Free have mod/ref effects. Do not allow CSE of function calls thatChris Lattner2005-04-221-0/+2
| | | | | | | call malloc/free. This fixes PR555. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21443 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert tabs to spacesMisha Brukman2005-04-227-28/+28
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21439 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove trailing whitespaceMisha Brukman2005-04-211-7/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21427 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove trailing whitespaceMisha Brukman2005-04-2137-439/+439
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21416 91177308-0d34-0410-b5e6-96231b3b80d8
* add support for taking and resolving the address of free.Chris Lattner2005-04-211-2/+31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21396 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a crash analyzing MultiSource/Benchmarks/MallocBench/gsChris Lattner2005-04-121-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21245 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't make this require loopsimplify. It works BETTER with loop simplifyChris Lattner2005-04-061-1/+0
| | | | | | | but should not require it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21123 91177308-0d34-0410-b5e6-96231b3b80d8
* do not crash when using -debugChris Lattner2005-04-051-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21092 91177308-0d34-0410-b5e6-96231b3b80d8
* do not dereference an extra layer of pointers to determine if an externalChris Lattner2005-04-041-12/+5
| | | | | | | | call can modify a memory location. This fixes test/Regression/Analysis/Andersens/modreftest.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21088 91177308-0d34-0410-b5e6-96231b3b80d8
* fix some VC compilation problems, thanks to Jeff C for pointing this out!Chris Lattner2005-04-021-4/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21044 91177308-0d34-0410-b5e6-96231b3b80d8
* EquivClassGraphs is now in DataStructure.hChris Lattner2005-04-022-3/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21042 91177308-0d34-0410-b5e6-96231b3b80d8
* use a callee_iterator typedef.Chris Lattner2005-04-023-9/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21038 91177308-0d34-0410-b5e6-96231b3b80d8
* Change the ActualCallees callgraph from hash_multimap<Instruction,Function>Chris Lattner2005-04-025-78/+40
| | | | | | | | | | to std::set<std::pair<Inst,Func>> to avoid duplicate entries. This speeds up the CompleteBU pass from 1.99s to .15s on povray and the eqgraph passes from 1.5s to .16s on the same. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21031 91177308-0d34-0410-b5e6-96231b3b80d8
* import all of the rest of the stubs that dsa uses for direct comparisonChris Lattner2005-03-291-11/+43
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20932 91177308-0d34-0410-b5e6-96231b3b80d8
* learn about some more functions.Chris Lattner2005-03-291-4/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20929 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a problem where we not marking incoming arguments to functions withChris Lattner2005-03-292-5/+14
| | | | | | | external linkage as incomplete. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20927 91177308-0d34-0410-b5e6-96231b3b80d8
* there is no point comparing against null pointer.Chris Lattner2005-03-291-2/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20925 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a major problem with global variable initializers. This could causeChris Lattner2005-03-291-1/+2
| | | | | | | | us to have stuff pointing to the null pointer, which makes no sense (the null ptr is an ssa value, not the null object) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20922 91177308-0d34-0410-b5e6-96231b3b80d8
* add some more functions, ignore setcc for constraints!Chris Lattner2005-03-291-4/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20917 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle "known" external calls context sensitively, add support for reallocChris Lattner2005-03-291-17/+29
| | | | | | | | | and a couple of other functions that are important. Handle aggregate undef values for gv initializers git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20914 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach andersens that non-escaping memory cannot be mod/ref'd by external fn ↵Chris Lattner2005-03-281-2/+40
| | | | | | calls. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20891 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix grammarMisha Brukman2005-03-281-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20890 91177308-0d34-0410-b5e6-96231b3b80d8
* Make anders-aa much more precise by not being completely pessimistic aboutChris Lattner2005-03-281-1/+39
| | | | | | | external functions. Teach it about a few important ones. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20889 91177308-0d34-0410-b5e6-96231b3b80d8
* wrap some long linesChris Lattner2005-03-271-5/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20884 91177308-0d34-0410-b5e6-96231b3b80d8
* remove ...Chris Lattner2005-03-271-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20883 91177308-0d34-0410-b5e6-96231b3b80d8