summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMisha Brukman <brukman+llvm@gmail.com>2004-01-21 22:54:10 +0000
committerMisha Brukman <brukman+llvm@gmail.com>2004-01-21 22:54:10 +0000
commit2b5dc166a13f4164c1e8b72543b29168781d175c (patch)
treeff4ec91696457d66f24e91e04fca31fba9c338a7
parent6e2c6054c1074997f77a6c9e379f311868392009 (diff)
downloadbcm5719-llvm-2b5dc166a13f4164c1e8b72543b29168781d175c.tar.gz
bcm5719-llvm-2b5dc166a13f4164c1e8b72543b29168781d175c.zip
To materialize a module, you need to know what functions NEED to be read and
which ones don't, which is state that the parent class doesn't know without knowing the implementation. Let the children classes implement materializeModule(). llvm-svn: 10942
-rw-r--r--llvm/include/llvm/ModuleProvider.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/include/llvm/ModuleProvider.h b/llvm/include/llvm/ModuleProvider.h
index 07b7ae3bab9..a9422c2afb0 100644
--- a/llvm/include/llvm/ModuleProvider.h
+++ b/llvm/include/llvm/ModuleProvider.h
@@ -41,7 +41,7 @@ public:
/// materializeModule - make sure the entire Module has been completely read.
///
- Module* materializeModule();
+ virtual Module* materializeModule() = 0;
/// releaseModule - no longer delete the Module* when provider is destroyed.
///
@@ -64,6 +64,7 @@ struct ExistingModuleProvider : public ModuleProvider {
TheModule = M;
}
void materializeFunction(Function *F) {}
+ Module* materializeModule() { return TheModule; }
};
} // End llvm namespace
OpenPOWER on IntegriCloud