summaryrefslogtreecommitdiffstats
path: root/llvm/lib/VMCore/PassManager.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Do not use virtual function to identify an analysis pass.Devang Patel2008-03-191-1/+1
| | | | llvm-svn: 48520
* Identify Analysis pass.Devang Patel2008-03-181-0/+6
| | | | | | | Do not run analysis pass again if analysis info is still available. This fixes PR1441. llvm-svn: 48476
* C and Objective Caml bindings for PassManagers.Gordon Henriksen2008-03-161-0/+31
| | | | llvm-svn: 48413
* Eliminate a few unnecessary uses of dynamic_cast.Dan Gohman2008-03-131-7/+4
| | | | llvm-svn: 48318
* Fix a typo.Dan Gohman2008-03-131-1/+1
| | | | llvm-svn: 48317
* Don't redundantly clear std::vector members in destructors.Dan Gohman2008-03-131-3/+0
| | | | llvm-svn: 48316
* Change PMTopLevelManager's PassManagers vector element type fromDan Gohman2008-03-131-12/+13
| | | | | | | | | | | Pass* to PMDataManager*. PMDataManager is more specific than Pass, so this more accurately describes the objects that are being stored. This eliminates the need for several dynamic_casts to PMDataManager*. It does introduce one dynamic_cast though, in dumpPasses(). Give this one a comment describing why a dynamic_cast is being used. llvm-svn: 48315
* Change PMStack::push to accept a PMDataManager* instead ofDan Gohman2008-03-131-2/+1
| | | | | | | a Pass*. PMDataManager* is what it actually holds, so this makes it clearer. llvm-svn: 48314
* Give PassManager and FunctionPassManager a common base class, withDan Gohman2008-03-111-1/+1
| | | | | | | | add(Pass *) as a pure virtual member function. This will allow all the various addPassesTo* functions in LLVM to avoid hard-coding what type of PassManager is used. llvm-svn: 48226
* Fix typos in comments.Dan Gohman2008-03-111-2/+2
| | | | llvm-svn: 48225
* Remove dead code.Devang Patel2008-02-271-14/+0
| | | | llvm-svn: 47700
* Add comment explaining what is lower level analysis pass.Devang Patel2008-02-021-0/+10
| | | | llvm-svn: 46658
* Fix 80-col violations.Dan Gohman2008-01-291-8/+13
| | | | llvm-svn: 46510
* Remove attribution from file headers, per discussion on llvmdev.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45418
* Add explicit keywords.Dan Gohman2007-10-081-5/+7
| | | | llvm-svn: 42747
* Fix a using namespace llvm; in a header file.Dan Gohman2007-10-031-0/+1
| | | | llvm-svn: 42584
* Do not overuse std::string. Pass around char * directly.Devang Patel2007-08-101-11/+11
| | | | llvm-svn: 41001
* minor simplifications.Chris Lattner2007-08-101-10/+8
| | | | llvm-svn: 40981
* avoid copying strings.Chris Lattner2007-08-101-4/+4
| | | | llvm-svn: 40980
* Fix pastos in comments for doFinalization functions.Dan Gohman2007-07-301-2/+2
| | | | llvm-svn: 40588
* Add facility to dump pass manager structure Devang Patel2007-07-271-0/+12
| | | | | | to make it easier to understand failure. llvm-svn: 40567
* Use SmallVector instead of std::vector.Devang Patel2007-07-201-10/+10
| | | | llvm-svn: 40109
* Verify loop info.Devang Patel2007-07-191-7/+18
| | | | llvm-svn: 40062
* Set up ground work to verify preserved analysis info.Devang Patel2007-07-191-1/+8
| | | | llvm-svn: 40039
* Fix memory leak.Devang Patel2007-07-091-3/+0
| | | | llvm-svn: 38469
* Here is the bulk of the sanitizing.Gabor Greif2007-07-051-1/+1
| | | | | | Almost all occurrences of "bytecode" in the sources have been eliminated. llvm-svn: 37913
* Fix quotes in debug messages.Devang Patel2007-06-181-6/+6
| | | | llvm-svn: 37630
* If user wants to run instcombine twice, do not block it.Devang Patel2007-05-231-5/+0
| | | | llvm-svn: 37301
* Drop 'const'Devang Patel2007-05-031-9/+9
| | | | llvm-svn: 36662
* Use 'static const char' instead of 'static const int'.Devang Patel2007-05-021-9/+9
| | | | | | | Due to darwin gcc bug, one version of darwin linker coalesces static const int, which defauts PassID based pass identification. llvm-svn: 36652
* Do not use typeinfo to identify pass in pass manager.Devang Patel2007-05-011-8/+17
| | | | llvm-svn: 36632
* Use toplevel function pass manager as OnTheFly manager.Devang Patel2007-04-261-10/+17
| | | | llvm-svn: 36481
* Proivde getAnalysis<FPAnalysis>(Func) support.Devang Patel2007-04-161-0/+5
| | | | llvm-svn: 36159
* Do not assert during analysis implementation initialization.Devang Patel2007-04-161-1/+3
| | | | llvm-svn: 36158
* Print and delete on the fly pass managers.Devang Patel2007-04-161-3/+19
| | | | llvm-svn: 36157
* Update module pass manager to support module passes that requireDevang Patel2007-04-161-11/+44
| | | | | | function passes. llvm-svn: 36154
* Give each pass manager chance to manage lower level analysis pass, which isDevang Patel2007-04-161-20/+60
| | | | | | pass required by one of pass managed by the manager. llvm-svn: 36153
* Removed tabs everywhere except autogenerated & external files. Add makeAnton Korobeynikov2007-04-161-3/+3
| | | | | | target for tabs checking. llvm-svn: 36146
* Speed Up Pass Manager.Devang Patel2007-03-081-15/+16
| | | | | | | - Check Immutableness before searching PreservedSet. - Avoid unnecessary traversal while setting Last User. llvm-svn: 35028
* Keep track of higher level analysis.Devang Patel2007-03-061-0/+26
| | | | llvm-svn: 34974
* Keep track of inherited analysis. For example, if a loop pass does notDevang Patel2007-03-061-0/+21
| | | | | | | preserve dominator info then it should update parent FPPassManager's available analysis info to reflect this. llvm-svn: 34942
* Add preparePassManager() hook. This allows each pass to check whetherDevang Patel2007-03-061-0/+3
| | | | | | | | | | | | current active pass manager is appropriate or not. A loop pass may consider current LPPassManager in appropraite if loop pass is not preserving analysis information that is used by other passes managed by current LPPassManager. In such situation, loop pass can pop current LPPassManager from the PMStack using this hook and use new LPPassManager for itself. llvm-svn: 34941
* Current pass manager, not the parent pass manager, assumes the role ofDevang Patel2007-03-051-22/+10
| | | | | | | | | last user when one of the managed pass uses info provided by parent pass manager. This was exposed by LPPassManager work. llvm-svn: 34936
* Avoid constructing std::strings unless pass debugging is ON.Devang Patel2007-03-051-32/+52
| | | | llvm-svn: 34933
* Account for time consumed by releaseMemory() properly.Devang Patel2007-03-051-2/+2
| | | | llvm-svn: 34932
* Unbreak VC++ build.Jeff Cohen2007-03-051-0/+1
| | | | llvm-svn: 34917
* Make getPassManagerType() const.Devang Patel2007-02-271-2/+4
| | | | llvm-svn: 34669
* temporarily revert Devang's most recent patch, which caused a largeChris Lattner2007-02-171-16/+4
| | | | | | compile-time regression in LLC. llvm-svn: 34385
* Use inverted map to speedup collectLastUses().Devang Patel2007-02-171-4/+16
| | | | llvm-svn: 34364
* Do not drop transferred last uses on the floor.Devang Patel2007-02-071-0/+3
| | | | | | Use handleLastUserOverflow(). llvm-svn: 34006
OpenPOWER on IntegriCloud