[lld] r226137 - Merge SimpleFileNode with WrapperNode.
Rui Ueyama
ruiu at google.com
Wed Jan 14 23:05:46 PST 2015
Author: ruiu
Date: Thu Jan 15 01:05:46 2015
New Revision: 226137
URL: http://llvm.org/viewvc/llvm-project?rev=226137&view=rev
Log:
Merge SimpleFileNode with WrapperNode.
Modified:
lld/trunk/include/lld/Core/InputGraph.h
lld/trunk/lib/Driver/Driver.cpp
lld/trunk/lib/ReaderWriter/PECOFF/PECOFFLinkingContext.cpp
Modified: lld/trunk/include/lld/Core/InputGraph.h
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/include/lld/Core/InputGraph.h?rev=226137&r1=226136&r2=226137&view=diff
==============================================================================
--- lld/trunk/include/lld/Core/InputGraph.h (original)
+++ lld/trunk/include/lld/Core/InputGraph.h Thu Jan 15 01:05:46 2015
@@ -185,21 +185,6 @@ protected:
bool _done;
};
-/// \brief Represents Internal Input files
-class SimpleFileNode : public FileNode {
-public:
- SimpleFileNode(StringRef path) : FileNode(path) {}
- SimpleFileNode(StringRef path, std::unique_ptr<File> f)
- : FileNode(path, std::move(f)) {}
-
- virtual ~SimpleFileNode() {}
-
- /// \brief add a file to the list of files
- virtual void appendInputFile(std::unique_ptr<File> f) {
- _file = std::move(f);
- }
-};
-
} // namespace lld
#endif // LLD_CORE_INPUT_GRAPH_H
Modified: lld/trunk/lib/Driver/Driver.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/Driver/Driver.cpp?rev=226137&r1=226136&r2=226137&view=diff
==============================================================================
--- lld/trunk/lib/Driver/Driver.cpp (original)
+++ lld/trunk/lib/Driver/Driver.cpp Thu Jan 15 01:05:46 2015
@@ -7,7 +7,6 @@
//
//===----------------------------------------------------------------------===//
-#include "lld/Driver/Driver.h"
#include "lld/Core/ArchiveLibraryFile.h"
#include "lld/Core/File.h"
#include "lld/Core/Instrumentation.h"
@@ -15,6 +14,8 @@
#include "lld/Core/Parallel.h"
#include "lld/Core/PassManager.h"
#include "lld/Core/Resolver.h"
+#include "lld/Driver/Driver.h"
+#include "lld/Driver/WrapperInputGraph.h"
#include "lld/Passes/RoundTripNativePass.h"
#include "lld/Passes/RoundTripYAMLPass.h"
#include "lld/ReaderWriter/Reader.h"
@@ -117,7 +118,7 @@ bool Driver::link(LinkingContext &contex
context.createInternalFiles(internalFiles);
for (auto i = internalFiles.rbegin(), e = internalFiles.rend(); i != e; ++i) {
context.getInputGraph().addInputElementFront(
- llvm::make_unique<SimpleFileNode>("internal", std::move(*i)));
+ llvm::make_unique<WrapperNode>(std::move(*i)));
}
// Give target a chance to add files.
@@ -125,7 +126,7 @@ bool Driver::link(LinkingContext &contex
context.createImplicitFiles(implicitFiles);
for (auto i = implicitFiles.rbegin(), e = implicitFiles.rend(); i != e; ++i) {
context.getInputGraph().addInputElementFront(
- llvm::make_unique<SimpleFileNode>("implicit", std::move(*i)));
+ llvm::make_unique<WrapperNode>(std::move(*i)));
}
// Give target a chance to sort the input files.
Modified: lld/trunk/lib/ReaderWriter/PECOFF/PECOFFLinkingContext.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/PECOFF/PECOFFLinkingContext.cpp?rev=226137&r1=226136&r2=226137&view=diff
==============================================================================
--- lld/trunk/lib/ReaderWriter/PECOFF/PECOFFLinkingContext.cpp (original)
+++ lld/trunk/lib/ReaderWriter/PECOFF/PECOFFLinkingContext.cpp Thu Jan 15 01:05:46 2015
@@ -17,6 +17,7 @@
#include "PDBPass.h"
#include "lld/Core/PassManager.h"
#include "lld/Core/Simple.h"
+#include "lld/Driver/WrapperInputGraph.h"
#include "lld/Passes/LayoutPass.h"
#include "lld/Passes/RoundTripNativePass.h"
#include "lld/Passes/RoundTripYAMLPass.h"
@@ -109,27 +110,23 @@ bool PECOFFLinkingContext::createImplici
pecoff::ResolvableSymbols* syms = getResolvableSymsFile();
// Create a file for the entry point function.
- std::unique_ptr<SimpleFileNode> entry(new SimpleFileNode("<entry>"));
- entry->appendInputFile(
- llvm::make_unique<pecoff::EntryPointFile>(*this, syms));
+ std::unique_ptr<WrapperNode> entry(new WrapperNode(
+ llvm::make_unique<pecoff::EntryPointFile>(*this, syms)));
getInputGraph().addInputElementFront(std::move(entry));
// Create a file for __ImageBase.
- auto fileNode = llvm::make_unique<SimpleFileNode>("Implicit Files");
- fileNode->appendInputFile(
- llvm::make_unique<pecoff::LinkerGeneratedSymbolFile>(*this));
+ std::unique_ptr<WrapperNode> fileNode(new WrapperNode(
+ llvm::make_unique<pecoff::LinkerGeneratedSymbolFile>(*this)));
getInputGraph().addInputElement(std::move(fileNode));
// Create a file for _imp_ symbols.
- auto impFileNode = llvm::make_unique<SimpleFileNode>("imp");
- impFileNode->appendInputFile(
- llvm::make_unique<pecoff::LocallyImportedSymbolFile>(*this));
+ std::unique_ptr<WrapperNode> impFileNode(new WrapperNode(
+ llvm::make_unique<pecoff::LocallyImportedSymbolFile>(*this)));
getInputGraph().addInputElement(std::move(impFileNode));
// Create a file for dllexported symbols.
- auto exportNode = llvm::make_unique<SimpleFileNode>("<export>");
- exportNode->appendInputFile(
- llvm::make_unique<pecoff::ExportedSymbolRenameFile>(*this, syms));
+ std::unique_ptr<WrapperNode> exportNode(new WrapperNode(
+ llvm::make_unique<pecoff::ExportedSymbolRenameFile>(*this, syms)));
addLibraryFile(std::move(exportNode));
return true;
More information about the llvm-commits
mailing list