diff options
Diffstat (limited to 'lld/lib/ReaderWriter')
-rw-r--r-- | lld/lib/ReaderWriter/CoreLinkingContext.cpp | 2 | ||||
-rw-r--r-- | lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp | 2 | ||||
-rw-r--r-- | lld/lib/ReaderWriter/MachO/MachOLinkingContext.cpp | 10 | ||||
-rw-r--r-- | lld/lib/ReaderWriter/PECOFF/PECOFFLinkingContext.cpp | 12 | ||||
-rw-r--r-- | lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp | 4 |
5 files changed, 15 insertions, 15 deletions
diff --git a/lld/lib/ReaderWriter/CoreLinkingContext.cpp b/lld/lib/ReaderWriter/CoreLinkingContext.cpp index 8f89f1d4a6a..fdc56ec7588 100644 --- a/lld/lib/ReaderWriter/CoreLinkingContext.cpp +++ b/lld/lib/ReaderWriter/CoreLinkingContext.cpp @@ -272,7 +272,7 @@ private: CoreLinkingContext::CoreLinkingContext() {} bool CoreLinkingContext::validateImpl(raw_ostream &diagnostics) { - return false; + return true; } void CoreLinkingContext::addPasses(PassManager &pm) const { diff --git a/lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp b/lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp index 15769971b18..30cdd2b5195 100644 --- a/lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp +++ b/lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp @@ -91,7 +91,7 @@ bool ELFLinkingContext::validateImpl(raw_ostream &diagnostics) { _writer = createWriterELF(*this); break; } - return false; + return true; } bool ELFLinkingContext::isDynamic() const { diff --git a/lld/lib/ReaderWriter/MachO/MachOLinkingContext.cpp b/lld/lib/ReaderWriter/MachO/MachOLinkingContext.cpp index 39996f47ed4..b8f7b4e55d9 100644 --- a/lld/lib/ReaderWriter/MachO/MachOLinkingContext.cpp +++ b/lld/lib/ReaderWriter/MachO/MachOLinkingContext.cpp @@ -207,28 +207,28 @@ bool MachOLinkingContext::validateImpl(raw_ostream &diagnostics) { if (_currentVersion && _outputFileType != mach_o::MH_DYLIB) { diagnostics << "error: -current_version can only be used with dylibs\n"; - return true; + return false; } if (_compatibilityVersion && _outputFileType != mach_o::MH_DYLIB) { diagnostics << "error: -compatibility_version can only be used with dylibs\n"; - return true; + return false; } if (_deadStrippableDylib && _outputFileType != mach_o::MH_DYLIB) { diagnostics << "error: -mark_dead_strippable_dylib can only be used with dylibs.\n"; - return true; + return false; } if (!_bundleLoader.empty() && outputFileType() != mach_o::MH_BUNDLE) { diagnostics << "error: -bundle_loader can only be used with Mach-O bundles\n"; - return true; + return false; } - return false; + return true; } bool MachOLinkingContext::setOS(OS os, StringRef minOSVersion) { diff --git a/lld/lib/ReaderWriter/PECOFF/PECOFFLinkingContext.cpp b/lld/lib/ReaderWriter/PECOFF/PECOFFLinkingContext.cpp index b10ca4d0484..db6a0ea1f3c 100644 --- a/lld/lib/ReaderWriter/PECOFF/PECOFFLinkingContext.cpp +++ b/lld/lib/ReaderWriter/PECOFF/PECOFFLinkingContext.cpp @@ -40,39 +40,39 @@ bool PECOFFLinkingContext::validateImpl(raw_ostream &diagnostics) { diagnostics << "Invalid stack size: reserve size must be equal to or " << "greater than commit size, but got " << _stackCommit << " and " << _stackReserve << ".\n"; - return true; + return false; } if (_heapReserve < _heapCommit) { diagnostics << "Invalid heap size: reserve size must be equal to or " << "greater than commit size, but got " << _heapCommit << " and " << _heapReserve << ".\n"; - return true; + return false; } // It's an error if the base address is not multiple of 64K. if (_baseAddress & 0xffff) { diagnostics << "Base address have to be multiple of 64K, but got " << _baseAddress << "\n"; - return true; + return false; } std::bitset<64> alignment(_sectionAlignment); if (alignment.count() != 1) { diagnostics << "Section alignment must be a power of 2, but got " << _sectionAlignment << "\n"; - return true; + return false; } // Architectures other than i386 is not supported yet. if (_machineType != llvm::COFF::IMAGE_FILE_MACHINE_I386) { diagnostics << "Machine type other than x86 is not supported.\n"; - return true; + return false; } _reader = createReaderPECOFF(*this); _writer = createWriterPECOFF(*this); - return false; + return true; } std::unique_ptr<File> PECOFFLinkingContext::createEntrySymbolFile() { diff --git a/lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp b/lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp index 2e1695394af..453c51f1f26 100644 --- a/lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp +++ b/lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp @@ -762,8 +762,8 @@ private: const char **argv = &tokens[0]; std::string errorMessage; llvm::raw_string_ostream stream(errorMessage); - bool parseFailed = WinLinkDriver::parse(argc, argv, _PECOFFLinkingContext, - stream, /*isDirective*/ true); + bool parseFailed = !WinLinkDriver::parse(argc, argv, _PECOFFLinkingContext, + stream, /*isDirective*/ true); stream.flush(); // Print error message if error. |