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:
parent
2da4178737
commit
70507e59fe
|
@ -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:
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue