Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Get rid of static constructors for pass registration. Instead, every pass ↵ | Owen Anderson | 2010-10-19 | 1 | -1/+3 |
| | | | | | | | | | | | | | | | | | exposes an initializeMyPassFunction(), which must be called in the pass's constructor. This function uses static dependency declarations to recursively initialize the pass's dependencies. Clients that only create passes through the createFooPass() APIs will require no changes. Clients that want to use the CommandLine options for passes will need to manually call the appropriate initialization functions in PassInitialization.h before parsing commandline arguments. I have tested this with all standard configurations of clang and llvm-gcc on Darwin. It is possible that there are problems with the static dependencies that will only be visible with non-standard options. If you encounter any crash in pass registration/creation, please send the testcase to me directly. llvm-svn: 116820 | ||||
* | Analysis groups need to initialize their default implementations. | Owen Anderson | 2010-10-13 | 1 | -1/+1 |
| | | | | llvm-svn: 116441 | ||||
* | Now with fewer extraneous semicolons! | Owen Anderson | 2010-10-07 | 1 | -2/+2 |
| | | | | llvm-svn: 115996 | ||||
* | Fix a warning when building with clang++. | Owen Anderson | 2010-10-07 | 1 | -2/+3 |
| | | | | llvm-svn: 115924 | ||||
* | Appease the clang self-host buildbot by providing a correct instantiation. | Owen Anderson | 2010-10-06 | 1 | -3/+3 |
| | | | | llvm-svn: 115857 | ||||
* | Hide analysis group registration behind a macro, just like pass registration. | Owen Anderson | 2010-10-06 | 1 | -1/+1 |
| | | | | llvm-svn: 115835 | ||||
* | Reapply r110396, with fixes to appease the Linux buildbot gods. | Owen Anderson | 2010-08-06 | 1 | -3/+3 |
| | | | | llvm-svn: 110460 | ||||
* | Revert r110396 to fix buildbots. | Owen Anderson | 2010-08-06 | 1 | -3/+3 |
| | | | | llvm-svn: 110410 | ||||
* | Don't use PassInfo* as a type identifier for passes. Instead, use the ↵ | Owen Anderson | 2010-08-05 | 1 | -3/+3 |
| | | | | | | | | address of the static ID member as the sole unique type identifier. Clean up APIs related to this change. llvm-svn: 110396 | ||||
* | Add INSTANTIATE_AG_PASS, which combines RegisterPass<> with ↵ | Owen Anderson | 2010-07-21 | 1 | -5/+2 |
| | | | | | | RegisterAnalysisGroup<> for pass registration. llvm-svn: 109058 | ||||
* | Speculatively revert r108813, in an attempt to get the self-host buildbots ↵ | Owen Anderson | 2010-07-20 | 1 | -1/+1 |
| | | | | | | | | working again. I don't see why this patch would cause them to fail the way they are, but none of the other intervening patches seem likely either. llvm-svn: 108818 | ||||
* | Reapply r108794, a fix for the failing test from last time. | Owen Anderson | 2010-07-20 | 1 | -1/+1 |
| | | | | llvm-svn: 108813 | ||||
* | cache another dereferenced iterator | Gabor Greif | 2010-07-15 | 1 | -4/+6 |
| | | | | llvm-svn: 108421 | ||||
* | Remove a pointless variable. | Duncan Sands | 2010-06-29 | 1 | -5/+1 |
| | | | | llvm-svn: 107128 | ||||
* | rename pred_const_iterator to const_pred_iterator for consistency's sake | Gabor Greif | 2010-03-25 | 1 | -9/+9 |
| | | | | llvm-svn: 99567 | ||||
* | adopt getAdjustedAnalysisPointer in a few more passes. | Chris Lattner | 2010-01-20 | 1 | -0/+14 |
| | | | | llvm-svn: 94018 | ||||
* | Change dbgs() back to errs() for assert messages as Chris requested. | David Greene | 2009-12-23 | 1 | -3/+3 |
| | | | | llvm-svn: 92076 | ||||
* | Convert debug messages to use dbgs(). Generally this means | David Greene | 2009-12-23 | 1 | -20/+20 |
| | | | | | | s/errs/dbgs/g except for certain special cases. llvm-svn: 92060 | ||||
* | You can't use typedefs to declare template member specializations, and | John McCall | 2009-12-15 | 1 | -35/+49 |
| | | | | | | clang enforces it. llvm-svn: 91397 | ||||
* | Converted ProfileInfo to template, added more API for ProfileInfo-preserving. | Andreas Neustifter | 2009-12-03 | 1 | -40/+925 |
| | | | | llvm-svn: 90445 | ||||
* | Remove includes of Support/Compiler.h that are no longer needed after the | Nick Lewycky | 2009-10-25 | 1 | -1/+0 |
| | | | | | | VISIBILITY_HIDDEN removal. llvm-svn: 85043 | ||||
* | Remove VISIBILITY_HIDDEN from class/struct found inside anonymous namespaces. | Nick Lewycky | 2009-10-25 | 1 | -2/+1 |
| | | | | | | | Chris claims we should never have visibility_hidden inside any .cpp file but that's still not true even after this commit. llvm-svn: 85042 | ||||
* | Add the first functions for updating ProfileInfo. | Andreas Neustifter | 2009-09-09 | 1 | -0/+83 |
| | | | | llvm-svn: 81359 | ||||
* | Move ProfileInfo::Edge's operator<< out of line. Among other benefits, | Dan Gohman | 2009-08-26 | 1 | -0/+8 |
| | | | | | | | this eliminates the ATTRIBUTE_USED, which wasn't being used in a manner acceptable to some GCC versions, according to the buildbots. llvm-svn: 80103 | ||||
* | Moved isDeclaration() check further down to allow for function counts for | Andreas Neustifter | 2009-08-26 | 1 | -1/+4 |
| | | | | | | declarations if necessary. llvm-svn: 80084 | ||||
* | This patch cleans up the ProfileInfo by | Andreas Neustifter | 2009-08-24 | 1 | -2/+4 |
| | | | | | | | | | | | *) introducing new data type and export function of edge info for whole function (preparation for next patch). *) renaming variables to make clear distinction between data and containers that contain this data. *) updated comments and whitespaces. *) made ProfileInfo::MissingValue a double (as it should be...). (Discussed at http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090817/084955.html.) llvm-svn: 79940 | ||||
* | Broke line before break. | Andreas Neustifter | 2009-08-19 | 1 | -1/+2 |
| | | | | llvm-svn: 79404 | ||||
* | Some ProfileInfo cleanups. | Daniel Dunbar | 2009-08-08 | 1 | -0/+1 |
| | | | | | | - Part of optimal static profiling patch sequence by Andreas Neustifter. llvm-svn: 78485 | ||||
* | More ProfileInfo improvements. | Daniel Dunbar | 2009-08-08 | 1 | -39/+28 |
| | | | | | | | | | | | | - Part of optimal static profiling patch sequence by Andreas Neustifter. - Store edge, block, and function information separately for each functions (instead of in one giant map). - Return frequencies as double instead of int, and use a sentinel value for missing information. llvm-svn: 78477 | ||||
* | Make block and function count available via ProfileInfo. | Daniel Dunbar | 2009-08-05 | 1 | -1/+6 |
| | | | | | | - Part of optimal static profiling patch sequence by Andreas Neustifter. llvm-svn: 78247 | ||||
* | ProfileInfo interface tweaks. | Daniel Dunbar | 2009-07-14 | 1 | -6/+10 |
| | | | | | | | | | | | | - Add getExecutionCount(const Function). - Add helper Edge type. - constify. - No functionality change. llvm-svn: 75623 | ||||
* | Tidy up several unbeseeming casts from pointer to intptr_t. | Dan Gohman | 2008-09-04 | 1 | -1/+1 |
| | | | | llvm-svn: 55779 | ||||
* | Clean up the use of static and anonymous namespaces. This turned up | Dan Gohman | 2008-05-13 | 1 | -10/+8 |
| | | | | | | | several things that were neither in an anonymous namespace nor static but not intended to be global. llvm-svn: 51017 | ||||
* | Restore isCFGOnly property of various analysis passes. | Devang Patel | 2008-03-20 | 1 | -1/+1 |
| | | | | llvm-svn: 48579 | ||||
* | PassInfo keep tracks whether a pass is an analysis pass or not. | Devang Patel | 2008-03-19 | 1 | -1/+1 |
| | | | | llvm-svn: 48554 | ||||
* | Remove attribution from file headers, per discussion on llvmdev. | Chris Lattner | 2007-12-29 | 1 | -2/+2 |
| | | | | llvm-svn: 45418 | ||||
* | Drop 'const' | Devang Patel | 2007-05-03 | 1 | -3/+3 |
| | | | | llvm-svn: 36662 | ||||
* | Use 'static const char' instead of 'static const int'. | Devang Patel | 2007-05-02 | 1 | -3/+3 |
| | | | | | | | Due to darwin gcc bug, one version of darwin linker coalesces static const int, which defauts PassID based pass identification. llvm-svn: 36652 | ||||
* | Fix build error. | Lauro Ramos Venancio | 2007-05-02 | 1 | -1/+1 |
| | | | | llvm-svn: 36648 | ||||
* | Do not use typeinfo to identify pass in pass manager. | Devang Patel | 2007-05-01 | 1 | -1/+6 |
| | | | | llvm-svn: 36632 | ||||
* | Change uses of Function::front to Function::getEntryBlock for readability. | Dan Gohman | 2007-03-22 | 1 | -1/+1 |
| | | | | llvm-svn: 35265 | ||||
* | Make classes in anonymous namespaces use VISIBILITY_HIDDEN to help reduce | Reid Spencer | 2007-02-05 | 1 | -1/+3 |
| | | | | | | LLVM's footprint and speed up linking. llvm-svn: 33941 | ||||
* | simplify AnalysisGroup registration, eliminating one typeid call. | Chris Lattner | 2006-08-28 | 1 | -1/+1 |
| | | | | llvm-svn: 29932 | ||||
* | eliminate RegisterOpt. It does the same thing as RegisterPass. | Chris Lattner | 2006-08-27 | 1 | -1/+1 |
| | | | | llvm-svn: 29925 | ||||
* | Remove trailing whitespace | Misha Brukman | 2005-04-21 | 1 | -3/+3 |
| | | | | llvm-svn: 21416 | ||||
* | Add even more missing createXxxPass functions. | Jeff Cohen | 2005-01-08 | 1 | -0/+3 |
| | | | | llvm-svn: 19402 | ||||
* | Switch to using edge profiling information as the basic source of profile info | Chris Lattner | 2004-03-08 | 1 | -0/+52 |
| | | | | | | from using basic block counts. llvm-svn: 12242 | ||||
* | Refactor implementations | Chris Lattner | 2004-03-08 | 1 | -3/+1 |
| | | | | llvm-svn: 12240 | ||||
* | Fix copy-and-pastos | Chris Lattner | 2004-02-11 | 1 | -2/+2 |
| | | | | llvm-svn: 11319 | ||||
* | Make sure to register the 'no profile' implementation as the default for ↵ | Chris Lattner | 2004-02-11 | 1 | -1/+1 |
| | | | | | | ProfileInfo llvm-svn: 11309 |