diff options
author | Chris Lattner <sabre@nondot.org> | 2002-04-04 19:21:27 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2002-04-04 19:21:27 +0000 |
commit | d6c8dd14737f0799ea5126db754cac85b2589447 (patch) | |
tree | f0abf7e41b68e83ea2f3c9526dfa5f0a8fc3fdf6 /llvm/lib/Analysis/DataStructure | |
parent | d7b6c331ea0aa23cb538f43d5aca0f9750ac551e (diff) | |
download | bcm5719-llvm-d6c8dd14737f0799ea5126db754cac85b2589447.tar.gz bcm5719-llvm-d6c8dd14737f0799ea5126db754cac85b2589447.zip |
Add hack to get timing of analysis
llvm-svn: 2101
Diffstat (limited to 'llvm/lib/Analysis/DataStructure')
-rw-r--r-- | llvm/lib/Analysis/DataStructure/DataStructure.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/llvm/lib/Analysis/DataStructure/DataStructure.cpp b/llvm/lib/Analysis/DataStructure/DataStructure.cpp index 13d3dce174c..01ef27383ce 100644 --- a/llvm/lib/Analysis/DataStructure/DataStructure.cpp +++ b/llvm/lib/Analysis/DataStructure/DataStructure.cpp @@ -29,9 +29,29 @@ void DataStructure::releaseMemory() { DSInfo.clear(); } +// FIXME REMOVE +#include <sys/time.h> +#include "Support/CommandLine.h" + +cl::Flag Time("t", "Print analysis time..."); + // print - Print out the analysis results... void DataStructure::print(std::ostream &O, Module *M) const { + if (Time) { + timeval TV1, TV2; + gettimeofday(&TV1, 0); + for (Module::iterator I = M->begin(), E = M->end(); I != E; ++I) + if (!(*I)->isExternal()) { + getDSGraph(*I); + getClosedDSGraph(*I); + } + gettimeofday(&TV2, 0); + cerr << "Analysis took " + << (TV2.tv_sec-TV1.tv_sec)*1000000+(TV2.tv_usec-TV1.tv_usec) + << " microseconds.\n"; + } + for (Module::iterator I = M->begin(), E = M->end(); I != E; ++I) if (!(*I)->isExternal()) { @@ -52,6 +72,9 @@ void DataStructure::print(std::ostream &O, Module *M) const { } else { O << " error opening file for writing!\n"; } + + O << (*I)->getName() << " " << getDSGraph(*I).getGraphSize() << " " + << getClosedDSGraph(*I).getGraphSize() << "\n"; } } |