'Pass' should now not be derived from by clients. Instead, they should derive

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
This commit is contained in:
Chris Lattner
2004-09-20 04:48:05 +00:00
parent bba61c07dd
commit b12914bfc0
64 changed files with 193 additions and 186 deletions
@@ -29,15 +29,15 @@
using namespace llvm;
namespace {
class FunctionProfiler : public Pass {
bool run(Module &M);
class FunctionProfiler : public ModulePass {
bool runOnModule(Module &M);
};
RegisterOpt<FunctionProfiler> X("insert-function-profiling",
"Insert instrumentation for function profiling");
}
bool FunctionProfiler::run(Module &M) {
bool FunctionProfiler::runOnModule(Module &M) {
Function *Main = M.getMainFunction();
if (Main == 0) {
std::cerr << "WARNING: cannot insert function profiling into a module"
@@ -69,15 +69,15 @@ bool FunctionProfiler::run(Module &M) {
namespace {
class BlockProfiler : public Pass {
bool run(Module &M);
class BlockProfiler : public ModulePass {
bool runOnModule(Module &M);
};
RegisterOpt<BlockProfiler> Y("insert-block-profiling",
"Insert instrumentation for block profiling");
}
bool BlockProfiler::run(Module &M) {
bool BlockProfiler::runOnModule(Module &M) {
Function *Main = M.getMainFunction();
if (Main == 0) {
std::cerr << "WARNING: cannot insert block profiling into a module"