diff options
Diffstat (limited to 'lld/tools/lld-core/lld-core.cpp')
| -rw-r--r-- | lld/tools/lld-core/lld-core.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/lld/tools/lld-core/lld-core.cpp b/lld/tools/lld-core/lld-core.cpp index 5512961ebf3..eeb49296234 100644 --- a/lld/tools/lld-core/lld-core.cpp +++ b/lld/tools/lld-core/lld-core.cpp @@ -12,6 +12,7 @@ #include "lld/Core/Pass.h" #include "lld/Core/Resolver.h" #include "lld/ReaderWriter/Reader.h" +#include "lld/ReaderWriter/ReaderArchive.h" #include "lld/ReaderWriter/ReaderNative.h" #include "lld/ReaderWriter/ReaderYAML.h" #include "lld/ReaderWriter/ReaderELF.h" @@ -76,6 +77,10 @@ cmdLineUndefinesIsError("undefines-are-errors", llvm::cl::desc("Any undefined symbols at end is an error")); llvm::cl::opt<bool> +cmdLineForceLoad("force-load", + llvm::cl::desc("force load all members of the archive")); + +llvm::cl::opt<bool> cmdLineCommonsSearchArchives("commons-search-archives", llvm::cl::desc("Tentative definitions trigger archive search")); @@ -214,6 +219,8 @@ int main(int argc, char *argv[]) { // create object to mange input files InputFiles inputFiles; + ReaderOptionsArchive readerOptionsArchive(cmdLineForceLoad); + // read input files into in-memory File objects TestingReaderOptionsYAML readerOptionsYAML; @@ -231,7 +238,9 @@ int main(int argc, char *argv[]) { reader = createReaderPECOFF(lld::ReaderOptionsPECOFF()); break; case readerELF: - reader = createReaderELF(lld::ReaderOptionsELF()); + reader = createReaderELF(lld::ReaderOptionsELF(), + readerOptionsArchive); + break; default: reader = createReaderYAML(readerOptionsYAML); |

