diff options
author | Misha Brukman <brukman+llvm@gmail.com> | 2004-01-21 22:54:10 +0000 |
---|---|---|
committer | Misha Brukman <brukman+llvm@gmail.com> | 2004-01-21 22:54:10 +0000 |
commit | c0039e25a497d2aebf53eb61204ba5d72dd4fc0b (patch) | |
tree | 76c4d1d63e36acbe11ef0d7b1c5ecbb94b4286cd /include/llvm/ModuleProvider.h | |
parent | 61eec1573a0a51b464da8cb3e4e081cf02475fbe (diff) |
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
Diffstat (limited to 'include/llvm/ModuleProvider.h')
-rw-r--r-- | include/llvm/ModuleProvider.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/llvm/ModuleProvider.h b/include/llvm/ModuleProvider.h index 07b7ae3bab..a9422c2afb 100644 --- a/include/llvm/ModuleProvider.h +++ b/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 |