summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis
Commit message (Collapse)AuthorAgeFilesLines
...
* Factor a bunch of classes out into a public headerChris Lattner2004-04-151-553/+142
| | | | llvm-svn: 12958
* Unbreak the buildChris Lattner2004-04-151-0/+1
| | | | llvm-svn: 12956
* Implement a FIXME: if we're going to insert a cast, we might as well onlyChris Lattner2004-04-141-1/+15
| | | | | | insert it once! llvm-svn: 12955
* This is a trivial tweak to the addrec insertion code: insert the incrementChris Lattner2004-04-141-7/+12
| | | | | | | | | | | at the bottom of the loop instead of the top. This reduces the number of overlapping live ranges a lot, for example, eliminating a spill in an important loop in 183.equake with linear scan. I still need to make the exit comparison of the loop use the post-incremented version of this variable, but this is an easy first step. llvm-svn: 12952
* Add some methods that are useful for updating loop information.Chris Lattner2004-04-121-4/+86
| | | | llvm-svn: 12871
* Change the call graph class to have TWO external nodes, making call graphChris Lattner2004-04-121-181/+22
| | | | | | | SCC passes much more useful. In particular, this should fix the incredibly stupid missed inlining opportunities that the inliner suffered from. llvm-svn: 12860
* Hrm, operator new and new[] do not belong here. We should not CSE them! :)Chris Lattner2004-04-121-3/+0
| | | | llvm-svn: 12859
* operator new & operator new[] do not kill any legal memory locations.Chris Lattner2004-04-111-0/+3
| | | | llvm-svn: 12833
* Allow clients to be more efficient.Chris Lattner2004-04-111-0/+4
| | | | llvm-svn: 12831
* Add a couple of more functions that cannot access memory (the intrinsics) andChris Lattner2004-04-101-0/+7
| | | | | | don't write to memory llvm-svn: 12808
* Fix a bug Brian found.Chris Lattner2004-04-071-2/+3
| | | | llvm-svn: 12754
* Sparc don't got not "sqrtl", bum bum bumChris Lattner2004-04-051-1/+1
| | | | llvm-svn: 12670
* Kill warnings during an optimized compile where assert() disappears.Misha Brukman2004-04-051-0/+2
| | | | llvm-svn: 12669
* Fix PR312 and IndVarsSimplify/2004-04-05-InvokeCastCrash.llxChris Lattner2004-04-051-0/+2
| | | | llvm-svn: 12668
* Support getelementptr instructions which use uint's to index into structureChris Lattner2004-04-052-15/+37
| | | | | | | types and can have arbitrary 32- and 64-bit integer types indexing into sequential types. llvm-svn: 12653
* Implement test/Regression/Transforms/GCSE/undefined_load.llChris Lattner2004-04-031-0/+14
| | | | llvm-svn: 12641
* Add a break in the default caseChris Lattner2004-04-031-0/+1
| | | | llvm-svn: 12639
* Remove obsolete filesChris Lattner2004-04-021-324/+0
| | | | llvm-svn: 12633
* Comment out debugging printoutsChris Lattner2004-04-021-1/+5
| | | | llvm-svn: 12623
* Add a new analysisChris Lattner2004-04-021-0/+2482
| | | | llvm-svn: 12619
* Minor efficiency improvement, finegrainify namespacificationChris Lattner2004-03-251-5/+10
| | | | llvm-svn: 12517
* Fix a HORRIBLY NASTY bug that caused siod to stop working last night.Chris Lattner2004-03-171-1/+1
| | | | llvm-svn: 12479
* Add some missing functions. Make sure to handle calls together in case theChris Lattner2004-03-162-3/+21
| | | | | | client has another VN implementation that can VN calls. llvm-svn: 12427
* Ok, the assertion was bogus. Calls that do not read/write memory should notChris Lattner2004-03-151-0/+6
| | | | | | have an alias set, just like adds and subtracts don't. llvm-svn: 12422
* This assertion is bogus now that calls do not necessarily read/write memoryChris Lattner2004-03-151-2/+0
| | | | llvm-svn: 12421
* Implement CSE of call instructions in the most trivial case. This implementsChris Lattner2004-03-151-11/+139
| | | | | | GCSE/call_cse.ll llvm-svn: 12419
* Fix a minor bug, implementing GCSE/call_pure_function.llChris Lattner2004-03-151-3/+6
| | | | | | Also, add some stuff I missed before. llvm-svn: 12417
* Don't be COMPLETELY pessimistic in the face of function callsChris Lattner2004-03-151-4/+20
| | | | llvm-svn: 12413
* Deinline some virtual methods, provide better mod/ref answers through theChris Lattner2004-03-151-5/+21
| | | | | | use of the boolean queries llvm-svn: 12410
* Pass through the boolean queriesChris Lattner2004-03-151-0/+12
| | | | llvm-svn: 12409
* Teach basicaa about some stdc functions.Chris Lattner2004-03-151-5/+100
| | | | llvm-svn: 12408
* Fix a tiny bug that caused an incorrect assertion failure poolallocatingChris Lattner2004-03-131-4/+6
| | | | | | boxed-sim. llvm-svn: 12358
* Rename the intrinsic enum values for llvm.va_* from Intrinsic::va_* toChris Lattner2004-03-131-5/+3
| | | | | | Intrinsic::va*. This avoid conflicting with macros in the stdlib.h file. llvm-svn: 12356
* Fix a couple of minor problems. Because PHI nodes can use themselves, thisChris Lattner2004-03-121-4/+1
| | | | | | could cause infinite loops. Also, getUnderlyingObject can return null llvm-svn: 12351
* Implement mod/ref analysis for a trivial case where locals don't escape.Chris Lattner2004-03-121-0/+52
| | | | | | | This comes up when you have a local array on the stack and you never pass the address of elements around. llvm-svn: 12349
* Simplify code to process CallSites (thanks to Chris).Misha Brukman2004-03-121-4/+2
| | | | llvm-svn: 12334
* Evaluate ModRef information in addition to regular ol' pointer analysis.Misha Brukman2004-03-121-24/+93
| | | | llvm-svn: 12331
* Implement getModRefInfo() for DSA to calculate whether a function modifies orMisha Brukman2004-03-121-5/+39
| | | | | | references a pointer. llvm-svn: 12330
* Make code more readable.Misha Brukman2004-03-121-35/+31
| | | | llvm-svn: 12305
* Fix PR284: [indvars] Induction variable analysis violates LLVM invariantsChris Lattner2004-03-101-1/+5
| | | | llvm-svn: 12275
* implement new methodChris Lattner2004-03-091-0/+24
| | | | llvm-svn: 12264
* Switch to using edge profiling information as the basic source of profile infoChris Lattner2004-03-082-5/+73
| | | | | | from using basic block counts. llvm-svn: 12242
* Refactor implementationsChris Lattner2004-03-082-10/+3
| | | | llvm-svn: 12240
* Import the trace class from the reoptimizerChris Lattner2004-03-081-0/+50
| | | | llvm-svn: 12236
* If we have edge counts, we can produce block counts. I've verified thatChris Lattner2004-03-081-11/+67
| | | | | | | using an edge profile to produce block counts gives the exact same numbers as using a block count directly. llvm-svn: 12232
* Add initial support for reading edge counts. This will be improved to enableChris Lattner2004-03-081-0/+29
| | | | | | translation of edge counts into block/function counts when possible. llvm-svn: 12229
* Fix a bug handling globals that are constants, but are still externalChris Lattner2004-03-081-1/+1
| | | | llvm-svn: 12208
* Fix a minor bugChris Lattner2004-03-051-1/+2
| | | | llvm-svn: 12169
* Unbreak the build on Sparc.Misha Brukman2004-03-051-0/+2
| | | | llvm-svn: 12161
* Fix a bug in a previous checkin that broke 175.vprChris Lattner2004-03-041-1/+1
| | | | llvm-svn: 12128
OpenPOWER on IntegriCloud