summaryrefslogtreecommitdiffstats
path: root/llvm/lib/VMCore/Pass.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Guard the listeners list. Unfortunately, this requires a real static ratherOwen Anderson2009-06-241-0/+5
| | | | | | | than a managed static because other managed statics can (and do) access this list in their destructors. Yes, I know it's horrible. llvm-svn: 74029
* Move the memory fences out of the path for single-threaded mode.Owen Anderson2009-06-191-5/+6
| | | | llvm-svn: 73775
* Move Threading.[h|cpp] from Support to System.Owen Anderson2009-06-181-1/+1
| | | | llvm-svn: 73707
* As pointed out by Duncan, I accidentally dropped the first MemoryFence of theOwen Anderson2009-06-181-4/+8
| | | | | | double-checked locking pattern here. llvm-svn: 73701
* Add braces to clarify if/else structure and remove warning.Nick Lewycky2009-06-181-1/+2
| | | | llvm-svn: 73673
* We need to use double-checked locking for lazy initialization in this case ↵Owen Anderson2009-06-171-1/+15
| | | | | | when running multithreaded. llvm-svn: 73636
* Rename getAnalysisToUpdate to getAnalysisIfAvailable.Duncan Sands2009-01-281-1/+1
| | | | llvm-svn: 63198
* Speed up the passmgr by avoiding heap thrashing on vectors.Chris Lattner2008-08-081-2/+3
| | | | llvm-svn: 54515
* fix some warnings when assertions are disabled.Chris Lattner2008-06-211-1/+1
| | | | llvm-svn: 52587
* Add #includes to make some dependencies explicit.Dan Gohman2008-05-231-0/+1
| | | | llvm-svn: 51496
* Change class' public PassInfo variables to by initialized with theDan Gohman2008-05-131-21/+16
| | | | | | | | | | | address of the PassInfo directly instead of calling getPassInfo. This eliminates a bunch of dynamic initializations of static data. Also, fold RegisterPassBase into PassInfo, make a bunch of its data members const, and rearrange some code to initialize data members in constructors instead of using setter member functions. llvm-svn: 51022
* Don't include <map> in Pass.h, which doesn't need it. This requiresDan Gohman2008-03-211-0/+1
| | | | | | adding <map> to many files that actually do need it. llvm-svn: 48667
* Update comments; getPassName no longer uses RTTI.Dan Gohman2008-03-141-2/+4
| | | | llvm-svn: 48369
* Remove unused runPass methods.Dan Gohman2008-03-081-14/+0
| | | | llvm-svn: 48044
* Fix 80-col violations.Dan Gohman2008-01-291-1/+2
| | | | llvm-svn: 46510
* Remove attribution from file headers, per discussion on llvmdev.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45418
* Reduce reliance on rtti infoChris Lattner2007-10-181-2/+1
| | | | llvm-svn: 43130
* Re-install patch to enable use of PassID.Devang Patel2007-05-021-15/+14
| | | | | | | I am preparing another patch to address the failure that prompted Chris to revert this patch earlier. llvm-svn: 36649
* revert enough of devang's recent patches to get the tree basically working againChris Lattner2007-05-021-15/+16
| | | | llvm-svn: 36638
* disable this assertion as a hack to get the build more unbroken :(Chris Lattner2007-05-021-1/+1
| | | | llvm-svn: 36637
* Do not use typeinfo to identify pass in pass manager.Devang Patel2007-05-011-15/+14
| | | | llvm-svn: 36632
* Move ~Pass() from Pass.h into Pass.cppDevang Patel2007-04-261-0/+5
| | | | llvm-svn: 36498
* Fix a bug that prevented the JIT from working correctly after llvm_shutdown.Chris Lattner2007-04-211-6/+16
| | | | | | | Pass info objects are initialized by static ctors, so deleting them at llvm_shutdown time prevents resurrection from working. llvm-svn: 36292
* Unbreak VC++ build.Jeff Cohen2007-03-051-0/+1
| | | | llvm-svn: 34917
* For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoidReid Spencer2007-01-301-2/+2
| | | | | | confusion with external linkage types. llvm-svn: 33663
* 1) Remove old AnalysisResolver.Devang Patel2007-01-051-8/+1
| | | | | | 2) Rename AnalysisResolver_New as AnalysisResolver llvm-svn: 32938
* Remove old pass manager.Devang Patel2007-01-051-175/+0
| | | | llvm-svn: 32927
* ModulePass and ImmutablePass. Force out of line virtual method.Devang Patel2006-12-221-0/+6
| | | | llvm-svn: 32748
* Using PDL as a prefix for PassDebugLevel enums is not a good idea.Devang Patel2006-12-131-4/+4
| | | | | | Fix it. llvm-svn: 32562
* Move enum PassDebugLevel from PassManagerT.h to Pass.h.Devang Patel2006-12-131-4/+4
| | | | | | | Use PDL as the prefix for these enums. Define and use PassDebugging_New in new PassManager. llvm-svn: 32554
* Add #ifdef switch toggle between old and new pass manager. However,Devang Patel2006-12-131-2/+16
| | | | | | | continue to use old pass manager at the moment. To use new manager remove #define USE_OLD_PASSMANAGER 1 from Pass.h llvm-svn: 32525
* fix PR1039 by making timing info be destroyed by llvm_shutdown, not byChris Lattner2006-12-101-2/+2
| | | | | | static dtors. llvm-svn: 32411
* Removing even more <iostream> includes.Bill Wendling2006-12-071-22/+21
| | | | llvm-svn: 32320
* Switch analysis groups to be unregistered when llvm_shutdown is called.Chris Lattner2006-12-011-55/+36
| | | | llvm-svn: 32110
* Start moving pass registration over to using the ManagedStatic mechanism.Chris Lattner2006-12-011-39/+52
| | | | | | | This fixes issues where passes get unregistered before llvm_shutdown is called, and is generally cleaner and simpler. Analysis groups up next. llvm-svn: 32108
* move 'cfgonly' pass tracking into PassInfo, instead of handling it withChris Lattner2006-12-011-37/+26
| | | | | | yet-another global data structure. llvm-svn: 32102
* Add explicit doInitialization/doFinalization methods instead of makingChris Lattner2006-09-041-1/+14
| | | | | | the FunctionPassManager redo this for each function. llvm-svn: 30079
* We no longer care whether something is an opt vs analysis pass, only whetherChris Lattner2006-08-271-3/+3
| | | | | | something is a pass vs an analysis group now. Simplify interfaces. llvm-svn: 29920
* Change the ModuleProvider interface to not throw exceptions.Chris Lattner2006-07-061-6/+2
| | | | llvm-svn: 29024
* For PR780:Reid Spencer2006-06-071-3/+0
| | | | | | | | | Break the "IncludeFile" mechanism into its own header file and adjust other files accordingly. Use this facility for the IntrinsicInst problem which was the subject of PR800. More to follow on this. llvm-svn: 28709
* Speedup and simplify pass registration by the observation that there isChris Lattner2006-01-231-20/+17
| | | | | | | | | exactly one PassInfo object per RegisterPass object and that their lifetimes are the same. As such, there is no reason for the RegisterPass object to dynamically allocate the PassInfo object at compiler startup time: just inline the object by-value. This should reduce codesize, heap size, and startup time. Yaay. llvm-svn: 25521
* Patch #6's in Saem's refactor-the-passmanager patch series. From him:Chris Lattner2006-01-041-8/+8
| | | | | | | This sanitises the world, blows away the specialisations and adds traits per passmanager type -- seemed most natural. llvm-svn: 25085
* Older compilers won't like the inline virtual destructor in the header fileReid Spencer2005-04-251-0/+3
| | | | | | so we put the destructor in Pass.cpp and make it non-inline. llvm-svn: 21520
* Remove trailing whitespaceMisha Brukman2005-04-211-10/+10
| | | | llvm-svn: 21427
* For PR387:\Reid Spencer2004-12-071-1/+1
| | | | | | | Make only one print method to avoid overloaded virtual warnings when \ compiled with -Woverloaded-virtual llvm-svn: 18589
* 'Pass' should now not be derived from by clients. Instead, they should deriveChris Lattner2004-09-201-10/+19
| | | | | | | | | | from ModulePass. Instead of implementing Pass::run, then should implement ModulePass::runOnModule. Also, fix some undefined behavior, expecting | on booleans to evaluate left-to-right. llvm-svn: 16435
* Changes For Bug 352Reid Spencer2004-09-011-2/+2
| | | | | | | | Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. llvm-svn: 16137
* Give the -time-passes tool option a global storage location so that itsReid Spencer2004-08-241-3/+4
| | | | | | value can be discovered by the various LLVM tools. llvm-svn: 16032
* There is no error message to print out, end sentence with `!'Misha Brukman2004-07-071-1/+1
| | | | llvm-svn: 14678
* Fix for bug 391.Reid Spencer2004-07-071-1/+9
| | | | | | Improve exeception handling around bcreader invocations. llvm-svn: 14674
OpenPOWER on IntegriCloud