summaryrefslogtreecommitdiffstats
path: root/llvm/lib/VMCore/Pass.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* - #include <iostream> since its not in Value.h any more.Reid Spencer2004-07-041-0/+1
| | | | llvm-svn: 14617
* Fix -debug-pass=Executions, which relied on Function, Module, and BasicBlockChris Lattner2004-02-291-13/+22
| | | | | | being annotable llvm-svn: 12013
* Fix typo in commentBrian Gaeke2004-02-281-1/+1
| | | | llvm-svn: 11966
* Two problems with these lines of code:Chris Lattner2004-02-091-2/+0
| | | | | | | | | | | 1. The "work" was not in the assert, so it was punishing the optimized release 2. getNamedFunction is _very_ expensive in large programs. It is not designed to be used like this, and was taking 7% of the execution time of the code generator on perlbmk. Since the assert "can never fail", I'm just killing it. llvm-svn: 11214
* Finegrainify namespacificationChris Lattner2003-11-211-4/+1
| | | | llvm-svn: 10131
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-111-0/+4
| | | | llvm-svn: 9903
* Added LLVM project notice to the top of every C++ source file.John Criswell2003-10-201-0/+7
| | | | | | Header files will be on the way. llvm-svn: 9298
* Enabling incremental bytecode loading in the JIT:Misha Brukman2003-10-141-3/+10
| | | | | | | * FunctionPassManager ctor now takes in a ModuleProvider * run() materializes function before running passes on it llvm-svn: 9126
* * Remove extraneous #includesChris Lattner2003-10-131-7/+9
| | | | | | | | | | | * Fix a nasty initializer ordering bug. Any only-CFG passes which registered themselves before the CFGOnlyAnalysis vector initialized got forgotten and thus got invalidated and recomputed. In particular, in my compiled version of gccas, the Loop information pass was being recomputed unnecessarily. llvm-svn: 9074
* Rename methodChris Lattner2003-10-121-1/+1
| | | | llvm-svn: 9055
* Don't include Config/stdio.h or <stdio.h>.Brian Gaeke2003-10-101-1/+0
| | | | llvm-svn: 9031
* Spell `necessary' correctly.Misha Brukman2003-08-181-1/+1
| | | | llvm-svn: 7944
* Add new method to FunctionPassManager to add ImmutablePasses.Brian Gaeke2003-08-141-0/+1
| | | | llvm-svn: 7838
* Dramatically simplify how -time-passes works.Chris Lattner2003-08-141-5/+11
| | | | | | | This also enables -time-passes for FunctionPassManagers, which allows it to be used for the JIT llvm-svn: 7834
* Add FunctionPassManager - it's like a PassManager, but it only deals inBrian Gaeke2003-08-121-0/+10
| | | | | | FunctionPasses. llvm-svn: 7778
* Merged in autoconf branch. This provides configuration via the autoconfJohn Criswell2003-06-301-4/+4
| | | | | | system. llvm-svn: 7014
* Remove usage of sys/unistd.hChris Lattner2003-06-191-1/+1
| | | | llvm-svn: 6788
* Add helper methodChris Lattner2003-03-211-0/+4
| | | | llvm-svn: 5753
* - Rename AnalysisUsage::preservesAll to getPreservesAll & preservesCFG toChris Lattner2002-10-211-2/+2
| | | | | | setPreservesCFG to be less confusing. llvm-svn: 4255
* Factor timer code out of PassManager implementation, into a generic interfaceChris Lattner2002-10-011-130/+0
| | | | | | exposed by Support/Timer.h. llvm-svn: 3993
* Add support for ImmutablePasses, which are not run, and cannot beChris Lattner2002-09-251-0/+9
| | | | | | invalidated. llvm-svn: 3921
* Another portability fix provided via Casey Carter:Chris Lattner2002-09-131-0/+1
| | | | | | | | ISSUE: getTimeRecord in lib/VMCore/Pass.cpp uses timeval and gettimeofday() without including sys/time.h. ACTION: Include sys/time.h. llvm-svn: 3699
* Add a new BasicBlockPass::doInitialization/Finalization(Function &) pair ofChris Lattner2002-09-121-4/+6
| | | | | | methods that may be useful for BasicBlockPasses. llvm-svn: 3688
* - PassManager prints analysis sets nicerChris Lattner2002-08-301-30/+9
| | | | | | - Use Pass::AnalysisImpls instead of findAnalysisGroupMemeber llvm-svn: 3534
* - Fighting with linking problem due to removing the ::ID elements. Now theChris Lattner2002-08-211-0/+3
| | | | | | | | | implementation .cpp files for analyses are not being included into gccas and friends because it is linking to the .a file and there is no explicit symbol reference to bring in the .o file. The new IncludeFile hack is the result. llvm-svn: 3436
* Remove debugging code accidentally checked in.Chris Lattner2002-08-211-4/+0
| | | | llvm-svn: 3430
* - Implement the new AnalysisGroup feature, neccesary for Value#ing and ↵Chris Lattner2002-08-211-4/+121
| | | | | | pointer analysis llvm-svn: 3426
* - Eliminate the need for analyses to expose an ::ID member.Chris Lattner2002-08-211-2/+5
| | | | llvm-svn: 3414
* Sort -time-passes report first by user+system, then by Wall clock time.Chris Lattner2002-08-201-0/+11
| | | | llvm-svn: 3407
* Add missing spaceChris Lattner2002-08-191-1/+1
| | | | llvm-svn: 3387
* Fix the -time-passes option to not print NaN when there is zero execution timeChris Lattner2002-08-191-6/+13
| | | | llvm-svn: 3382
* Enhance -time-passes to be more detailed and usefulChris Lattner2002-08-011-19/+89
| | | | llvm-svn: 3199
* We need iostream in PassManagerT.h to use cerrChris Lattner2002-07-311-1/+0
| | | | llvm-svn: 3183
* Implement new -debug-pass=Arguments option that causes PassManager toChris Lattner2002-07-301-0/+13
| | | | | | print out the command line options for the optimizations it is running. llvm-svn: 3165
* * Move some code from Pass.cpp to PassManagerT.hChris Lattner2002-07-301-53/+9
| | | | | | | * Implement stuff so that code can declare that they only depend on the CFG of a function, not on anything else. This speeds up GCCAS a lot. llvm-svn: 3155
* * PassInfo is allowed to be missing now (ie, not all passes need be registered)Chris Lattner2002-07-291-6/+9
| | | | | | | * getPassName uses PassInfo if it's available * PassInfo is now cached in the pass so that it is only looked up once, maximum llvm-svn: 3123
* * Standardize how analysis results/passes as printed with the print() virtualChris Lattner2002-07-271-2/+17
| | | | | | | | | | methods * Eliminate AnalysisID: Now it is just a typedef for const PassInfo* * Simplify how AnalysisID's are initialized * Eliminate Analysis/Writer.cpp/.h: incorporate printing functionality into the analyses themselves. llvm-svn: 3116
* *** empty log message ***Chris Lattner2002-07-241-1/+1
| | | | llvm-svn: 3065
* Add support for pass registrationChris Lattner2002-07-231-0/+93
| | | | llvm-svn: 3018
* *** empty log message ***Chris Lattner2002-07-221-13/+18
| | | | llvm-svn: 2985
* changes for 64bit gccAnand Shukla2002-06-251-4/+4
| | | | llvm-svn: 2801
* MEGAPATCH checkin.Chris Lattner2002-06-251-14/+12
| | | | | | For details, See: docs/2002-06-25-MegaPatchInfo.txt llvm-svn: 2779
* Make functions that preserve the CFG not invalidate analyses that only dependChris Lattner2002-05-061-1/+28
| | | | | | on the CFG of a function llvm-svn: 2506
* Add new optional getPassName() virtual function that a Pass can overrideChris Lattner2002-04-291-5/+10
| | | | | | to make debugging output a lot nicer. llvm-svn: 2395
* Add a new command line option for PassManager using utilities.Chris Lattner2002-04-291-0/+60
| | | | | | | | Now for llc, gccas, analyze, opt, etc you can specify the -time-passes command line option that outputs a timing summary report that indicates how long each pass takes to execute. llvm-svn: 2394
* Move FunctionPass::doesNotModifyCFG to AnalysisUsage::preservesCFG()Chris Lattner2002-04-281-14/+15
| | | | llvm-svn: 2384
* * Add a stub to FunctionPass so that subclasses can declare that they do notChris Lattner2002-04-281-4/+28
| | | | | | | | | | modify the CFG. It currently does nothing, but will in the future. * Changes to make the public PassManager.h be MUCH smaller, and devoid of implementation details. Now PassManager is just a Pimpl class that wraps PassManagerT<Module>, but lib/VMCore/Pass.cpp is now the only class that has to #include PassManagerT.h llvm-svn: 2383
* Minor changes to allow Modules (which are no longer Values) to workChris Lattner2002-04-281-10/+9
| | | | llvm-svn: 2361
* * Rename MethodPass class to FunctionPassChris Lattner2002-04-271-34/+27
| | | | | | | | | | | | | | | - Rename runOnMethod to runOnFunction * Transform getAnalysisUsageInfo into getAnalysisUsage - Method is now const - It now takes one AnalysisUsage object to fill in instead of 3 vectors to fill in - Pass's now specify which other passes they _preserve_ not which ones they modify (be conservative!) - A pass can specify that it preserves all analyses (because it never modifies the underlying program) * s/Method/Function/g in other random places as well llvm-svn: 2333
* Make the release build compileChris Lattner2002-04-041-2/+0
| | | | llvm-svn: 2107
OpenPOWER on IntegriCloud