summaryrefslogtreecommitdiffstats
path: root/llvm/lib/VMCore/PassManager.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Add <cstdio> include where needed by gcc-4.4.Duncan Sands2008-10-081-0/+1
| | | | | | Patch by Samuel Tardieu. llvm-svn: 57291
* Remove interfaces implemented by dead pass from the list of available passes.Devang Patel2008-10-061-7/+17
| | | | | | Patch By Matthijs Kooijman. llvm-svn: 57202
* Add assertion check.Devang Patel2008-09-091-1/+1
| | | | llvm-svn: 56016
* Simplify.Devang Patel2008-09-091-8/+2
| | | | | | Fix outdated comment. llvm-svn: 55993
* Tidy up several unbeseeming casts from pointer to intptr_t.Dan Gohman2008-09-041-5/+4
| | | | llvm-svn: 55779
* The pass manager is not able to schedule -loop-deletion -loop-index-split.Devang Patel2008-08-141-14/+28
| | | | | | | | | | | The loop-deletion pass does not preserve dom frontier, which is required by loop-index-split. When the PM checks dom frontier for loop-index-split, it has already verified that lcssa is availalble. However, new dom frontier forces new loop pass manager, which does not have lcssa yet. The PM should recheck availability of required analysis passes in such cases. llvm-svn: 54805
* Use SmallVector instead of std::vectorDevang Patel2008-08-121-12/+12
| | | | llvm-svn: 54685
* Use DenseMap to keep track of last users.Devang Patel2008-08-121-6/+28
| | | | | | Use inversed map for faster queries. llvm-svn: 54662
* Keep track of analysis usage information for passes. Avoid invokingDevang Patel2008-08-111-23/+38
| | | | | | getAnalysisUsage() repeatedly. llvm-svn: 54650
* Don't call getAnalysisUsage unless -debug-pass is enabled. This speedsChris Lattner2008-08-081-23/+36
| | | | | | up the passmgr by avoiding useless work. llvm-svn: 54528
* Speed up the passmgr by avoiding heap thrashing on vectors.Chris Lattner2008-08-081-12/+12
| | | | llvm-svn: 54515
* Don't verify passes when assertions are disabled.Chris Lattner2008-08-071-4/+7
| | | | llvm-svn: 54446
* Consistently put quotes around pass names in debugging output.Dan Gohman2008-07-091-8/+8
| | | | llvm-svn: 53268
* Disable dom info verifier by default.Devang Patel2008-07-011-1/+1
| | | | llvm-svn: 52983
* Fix typos in comments. Devang Patel2008-07-011-5/+5
| | | | | | Thanks for the feedback! llvm-svn: 52978
* Add dom info verifier.Devang Patel2008-07-011-1/+51
| | | | llvm-svn: 52967
* Print debug message only if there are dead passes.Devang Patel2008-06-061-2/+3
| | | | llvm-svn: 52052
* More pass manager debugging outputs.Evan Cheng2008-06-041-0/+5
| | | | llvm-svn: 51930
* "Unable to schedule <A> required by <B>" is more helpful thenDevang Patel2008-06-031-1/+5
| | | | | | "Unable to handle Pass that requires lower level Analysis pass" llvm-svn: 51892
* Add debugging aid.Devang Patel2008-06-031-1/+7
| | | | llvm-svn: 51891
* Clean up the use of static and anonymous namespaces. This turned upDan Gohman2008-05-131-2/+2
| | | | | | | several things that were neither in an anonymous namespace nor static but not intended to be global. llvm-svn: 51017
* Keep track of analysis information inherited from Module pass manager.Devang Patel2008-03-201-0/+4
| | | | llvm-svn: 48576
* #if 1 .. #endif markers do not add any value.Devang Patel2008-03-191-2/+0
| | | | llvm-svn: 48560
* PassInfo keep tracks whether a pass is an analysis pass or not.Devang Patel2008-03-191-1/+4
| | | | llvm-svn: 48554
* 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
OpenPOWER on IntegriCloud