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().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10942 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Misha Brukman 2004-01-21 22:54:10 +00:00
parent 61eec1573a
commit c0039e25a4

View File

@ -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