COFF: Destroy LTOModules as they are linked.

This should help reduce memory consumption during LTO.

Differential Revision: http://reviews.llvm.org/D14672

llvm-svn: 253397
This commit is contained in:
Peter Collingbourne 2015-11-17 23:30:59 +00:00
parent 2da4178737
commit 70507e59fe
2 changed files with 1 additions and 2 deletions

View File

@ -205,7 +205,6 @@ public:
std::vector<SymbolBody *> &getSymbols() override { return SymbolBodies; }
MachineTypes getMachineType() override;
LTOModule *getModule() const { return M.get(); }
std::unique_ptr<LTOModule> takeModule() { return std::move(M); }
private:

View File

@ -406,7 +406,7 @@ std::vector<ObjectFile *> SymbolTable::createLTOObjects(LTOCodeGenerator *CG) {
CG->setModule(BitcodeFiles[0]->takeModule());
for (unsigned I = 1, E = BitcodeFiles.size(); I != E; ++I)
CG->addModule(BitcodeFiles[I]->getModule());
CG->addModule(BitcodeFiles[I]->takeModule().get());
bool DisableVerify = true;
#ifdef NDEBUG