[lld] r193479 - [PECOFF] Add atoms to the PassManager file
Shankar Easwaran
shankare at codeaurora.org
Sat Oct 26 12:38:33 PDT 2013
Author: shankare
Date: Sat Oct 26 14:38:33 2013
New Revision: 193479
URL: http://llvm.org/viewvc/llvm-project?rev=193479&view=rev
Log:
[PECOFF] Add atoms to the PassManager file
Modified:
lld/trunk/lib/ReaderWriter/PECOFF/IdataPass.h
Modified: lld/trunk/lib/ReaderWriter/PECOFF/IdataPass.h
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/PECOFF/IdataPass.h?rev=193479&r1=193478&r2=193479&view=diff
==============================================================================
--- lld/trunk/lib/ReaderWriter/PECOFF/IdataPass.h (original)
+++ lld/trunk/lib/ReaderWriter/PECOFF/IdataPass.h Sat Oct 26 14:38:33 2013
@@ -264,10 +264,21 @@ public:
vector<COFFSharedLibraryAtom *> &atoms = i.second;
createImportDirectory(context, loadName, atoms);
}
- new (_alloc) NullImportDirectoryAtom(context);
+
+ auto nidatom = new (_alloc) NullImportDirectoryAtom(context);
+ context.file.addAtom(*nidatom);
+
connectAtoms(context);
createDataDirectoryAtoms(context);
replaceSharedLibraryAtoms(context);
+ for (auto id : context.importDirectories)
+ context.file.addAtom(*id);
+ for (auto ilt : context.importLookupTables)
+ context.file.addAtom(*ilt);
+ for (auto iat : context.importAddressTables)
+ context.file.addAtom(*iat);
+ for (auto hna : context.hintNameAtoms)
+ context.file.addAtom(*hna);
}
private:
@@ -303,6 +314,7 @@ private:
appendAtoms(atoms, context.importAddressTables);
appendAtoms(atoms, context.dllNameAtoms);
appendAtoms(atoms, context.hintNameAtoms);
+
coff::connectAtomsWithLayoutEdge(atoms);
}
More information about the llvm-commits
mailing list