diff options
author | Tanya Lattner <tonic@nondot.org> | 2007-05-18 06:20:09 +0000 |
---|---|---|
committer | Tanya Lattner <tonic@nondot.org> | 2007-05-18 06:20:09 +0000 |
commit | f3924f8b4d48f72d45bad1be3c4ddb61ab07bf0d (patch) | |
tree | e0cfbec04969d7dfd4650e9fe4b65b5f949d1ac2 /lib/Bitcode/Reader/BitcodeReader.h | |
parent | 66d683b113562bf22c44642196eda7a31e1ca068 (diff) |
Merge from mainline.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_20@37216 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Bitcode/Reader/BitcodeReader.h')
-rw-r--r-- | lib/Bitcode/Reader/BitcodeReader.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/lib/Bitcode/Reader/BitcodeReader.h b/lib/Bitcode/Reader/BitcodeReader.h index b70a99c057..2f61b06c60 100644 --- a/lib/Bitcode/Reader/BitcodeReader.h +++ b/lib/Bitcode/Reader/BitcodeReader.h @@ -39,6 +39,10 @@ public: ++NumOperands; } + void clear() { + std::vector<Use>().swap(Uses); + } + Value *operator[](unsigned i) const { return getOperand(i); } Value *back() const { return Uses.back(); } @@ -111,8 +115,11 @@ public: BitcodeReader(MemoryBuffer *buffer) : Buffer(buffer), ErrorString(0) { HasReversedFunctionsWithBodies = false; } - ~BitcodeReader(); + ~BitcodeReader() { + FreeState(); + } + void FreeState(); /// releaseMemoryBuffer - This causes the reader to completely forget about /// the memory buffer it contains, which prevents the buffer from being @@ -123,7 +130,9 @@ public: virtual bool materializeFunction(Function *F, std::string *ErrInfo = 0); virtual Module *materializeModule(std::string *ErrInfo = 0); - + virtual void dematerializeFunction(Function *F); + virtual Module *releaseModule(std::string *ErrInfo = 0); + bool Error(const char *Str) { ErrorString = Str; return true; |