Make a few utility functions file-scoped.
authorRui Ueyama <ruiu@google.com>
Tue, 1 Mar 2016 23:52:04 +0000 (23:52 +0000)
committerRui Ueyama <ruiu@google.com>
Tue, 1 Mar 2016 23:52:04 +0000 (23:52 +0000)
makeErrorFile and parseMemberFiles are now used only in DarwinLdDriver.cpp.
This patch moves them to that file.

llvm-svn: 262423

lld/include/lld/Driver/Driver.h
lld/lib/Driver/DarwinLdDriver.cpp
lld/lib/Driver/Driver.cpp
lld/lib/ReaderWriter/FileArchive.cpp

index d220a8f..e2f51ac 100644 (file)
 
 namespace lld {
 class LinkingContext;
-class CoreLinkingContext;
 class MachOLinkingContext;
 
-typedef std::vector<std::unique_ptr<File>> FileVector;
-
-FileVector makeErrorFile(StringRef path, std::error_code ec);
-FileVector parseMemberFiles(std::unique_ptr<File> File);
-
 /// Base class for all Drivers.
 class Driver {
 protected:
index 3734876..31d9405 100644 (file)
@@ -72,6 +72,25 @@ public:
   DarwinLdOptTable() : OptTable(infoTable) {}
 };
 
+static std::vector<std::unique_ptr<File>>
+makeErrorFile(StringRef path, std::error_code ec) {
+  std::vector<std::unique_ptr<File>> result;
+  result.push_back(llvm::make_unique<ErrorFile>(path, ec));
+  return result;
+}
+
+static std::vector<std::unique_ptr<File>>
+parseMemberFiles(std::unique_ptr<File> file) {
+  std::vector<std::unique_ptr<File>> members;
+  if (auto *archive = dyn_cast<ArchiveLibraryFile>(file.get())) {
+    if (std::error_code ec = archive->parseAllMembers(members))
+      return makeErrorFile(file->path(), ec);
+  } else {
+    members.push_back(std::move(file));
+  }
+  return members;
+}
+
 std::vector<std::unique_ptr<File>>
 loadFile(MachOLinkingContext &ctx, StringRef path,
          raw_ostream &diag, bool wholeArchive, bool upwardDylib) {
index 28064cd..9db986a 100644 (file)
 
 namespace lld {
 
-FileVector makeErrorFile(StringRef path, std::error_code ec) {
-  std::vector<std::unique_ptr<File>> result;
-  result.push_back(llvm::make_unique<ErrorFile>(path, ec));
-  return result;
-}
-
-FileVector parseMemberFiles(std::unique_ptr<File> file) {
-  std::vector<std::unique_ptr<File>> members;
-  if (auto *archive = dyn_cast<ArchiveLibraryFile>(file.get())) {
-    if (std::error_code ec = archive->parseAllMembers(members))
-      return makeErrorFile(file->path(), ec);
-  } else {
-    members.push_back(std::move(file));
-  }
-  return members;
-}
-
 void Driver::parseLLVMOptions(const LinkingContext &ctx) {
   // Honor -mllvm
   if (!ctx.llvmOptions().empty()) {
index 5b4605e..9d1dc5d 100644 (file)
@@ -219,7 +219,7 @@ private:
   bool _logLoading;
   std::vector<std::unique_ptr<MemoryBuffer>> _memberBuffers;
   std::mutex _mutex;
-  FileVector _filesReturned;
+  std::vector<std::unique_ptr<File>> _filesReturned;
 };
 
 class ArchiveReader : public Reader {