aboutsummaryrefslogtreecommitdiff
path: root/tools/analyze/analyze.cpp
AgeCommit message (Collapse)Author
2006-08-18For PR872:Reid Spencer
Shrinkify LLVM's footprint by removing the analyze tool and moving its functionality into the opt tool. THis eliminates one of the largest tools from LLVM and doesn't make opt much bigger because it already included most of the analysis passes. To get the old analyze functionality pass the -analyze option to opt. Note that the integeration here is dead simple. The "main" of analyze was just copied to opt and invoked if the -analyze option was given. There may be opportunities for further integration such as removing the distinction between transform passes and analysis passes. To use the analysis functionality, if you previously did this: analyze $FNAME -domset -disable-verify you would now do this: opt -analyze $FNAME -domset -disable-verify Pretty simple. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29762 91177308-0d34-0410-b5e6-96231b3b80d8
2006-06-16Don't pass target name into TargetData anymore, it is never used or needed.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28831 91177308-0d34-0410-b5e6-96231b3b80d8
2006-06-07For PR780:Reid Spencer
1. Add #includes to LinkAllVMCore.h to get Mangler.o and InlineAsm.o 2. Make Mangler.h and InlineAsm.h use the macros to ensure linkage 3. Make each of the tools with --load options include LinkAllVMCore.h This should be the last set of changes for this bug and 800. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28719 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-03Implemented -quiet feature for analyzeRobert Bocchino
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26494 91177308-0d34-0410-b5e6-96231b3b80d8
2005-10-24Use the new LinkAllAnalyses.h header instead of forcing passes to beChris Lattner
in relinked object files git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23922 91177308-0d34-0410-b5e6-96231b3b80d8
2005-04-22Remove trailing whitespaceMisha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21428 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-30For PR351:Reid Spencer
* Place a try/catch block around the entire tool to Make sure std::string exceptions are caught and printed before exiting the tool. * Make sure we catch unhandled exceptions at the top level so that we don't abort with a useless message but indicate than an unhandled exception was generated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19192 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-20'Pass' should now not be derived from by clients. Instead, they should deriveChris Lattner
from ModulePass. Instead of implementing Pass::run, then should implement ModulePass::runOnModule. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16436 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-01Changes For Bug 352Reid Spencer
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/. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-29The functions in Signal.h are now in the llvm::sys namespace - adjustReid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16091 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-11Add -load optionChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14740 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-27Header file movedChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13813 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-19Make sure to print a stack trace whenever an error signal is deliveredChris Lattner
to the tool. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11634 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-11Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20fix file headersChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9293 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20Added copyright header to all C++ source files.John Criswell
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9291 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-12Add a disable-verify optionChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6155 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-12Move static stuff to an anonymous namespaceChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6154 91177308-0d34-0410-b5e6-96231b3b80d8
2003-04-24Make sure to create a target data that matches the Module's target properties.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5904 91177308-0d34-0410-b5e6-96231b3b80d8
2003-02-24Make printing messages nicerChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5616 91177308-0d34-0410-b5e6-96231b3b80d8
2002-12-03Disable timing of bytecode loaderChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4887 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-10Add a timer to evaluate bytecode load time and space requirementsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4679 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-06Give passnames to the printer classesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4559 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-30 - 'analyze' and 'as' now explicitly verify input because AsmParser doesn't.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3551 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-08- Cleaned up the interface to AnalysisUsage to take analysis class namesChris Lattner
instead of ::ID's. - Pass::getAnalysis<> now no longer takes an optional argument git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3265 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-31Changes to be GCC3.1 friendlyChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3187 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-30Print the tool name when an error comes from so that I can tell whichChris Lattner
tool of a pipeline is having issues. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3167 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-29Use a module analysisChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3133 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-29Seperate analysis wrapper stuff to AnalysisWrappers.cppChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3127 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-27Make analyze use the Pass repository to populate it's command line argument listChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3114 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-26*** empty log message ***Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3105 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-25Be more namespace correctChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3086 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-22Add description to Enum options.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2987 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-22Convert command line option processing code over to use the syntax supportedChris Lattner
by the CommandLine 2.0 library git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2984 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-18Add support for bottom up closure of ds analysisChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2963 91177308-0d34-0410-b5e6-96231b3b80d8
2002-07-10Rename DataStructure to LocalDataStructuresChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2873 91177308-0d34-0410-b5e6-96231b3b80d8
2002-06-25MEGAPATCH checkin.Chris Lattner
For details, See: docs/2002-06-25-MegaPatchInfo.txt git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2778 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-29Remove InstForest from analysis namespaceChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2401 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-29Eliminate duplicate or unneccesary #include'sChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2397 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-29Add new optional getPassName() virtual function that a Pass can overrideChris Lattner
to make debugging output a lot nicer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2395 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-28Rename functions to be more consistend with other pass constructorsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2388 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-28Tighten up the AnalysisUsage of lots of passes, primarily to correctly ↵Chris Lattner
indicate whether or not they invalidate the CFGA git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2386 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-28Eliminate the cfg namespaceChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2371 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-27* Rename MethodPass class to FunctionPassChris Lattner
- 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 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2333 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-08Add #includesChris Lattner
s/PrintMethodPass/PrintFunctionPass git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2181 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-07Change references to the Method class to be references to the FunctionChris Lattner
class. The Method class is obsolete (renamed) and all references to it are being converted over to Function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2144 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-26* Add support for DataStructure analysisChris Lattner
* Parameterize pass outputting with the printPass template, so analysis output can optionally take more arguments than just a stream. The default output mode is just to use operator<< on the analysis. * Remove CurrentModule hack, in favor of using printPass * Remove special operator<<'s defined for FindUsedTypes and FindUnsafePointerTypes, in favor of printPass specializations * Use std::cout instead of cout git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1995 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-06Pull callgraph out of Cfg namespaceChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1822 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-24Cleanup to build with GCC 3.0.4Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1794 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-12Method.h no longer includes BasicBlock.hChris Lattner
Method::inst_* is now in llvm/Support/InstIterator.h GraphTraits specializations for BasicBlock and Methods are now in llvm/Support/CFG.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1746 91177308-0d34-0410-b5e6-96231b3b80d8