diff options
| author | Simon Atanasyan <simon@atanasyan.com> | 2014-04-30 19:03:56 +0000 |
|---|---|---|
| committer | Simon Atanasyan <simon@atanasyan.com> | 2014-04-30 19:03:56 +0000 |
| commit | db8a4a8578af7703937c30b47ee3ffc9a952e6b4 (patch) | |
| tree | 6c3647d2ded2dba2a66a234dd29b92cb6d80be5d /lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp | |
| parent | a54d34d4ad4c65154e7d53297cc2d9ad67644d6d (diff) | |
| download | bcm5719-llvm-db8a4a8578af7703937c30b47ee3ffc9a952e6b4.tar.gz bcm5719-llvm-db8a4a8578af7703937c30b47ee3ffc9a952e6b4.zip | |
[ELF] Return result from the function ASAP.
No functional changes.
llvm-svn: 207690
Diffstat (limited to 'lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp')
| -rw-r--r-- | lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp | 22 |
1 files changed, 6 insertions, 16 deletions
diff --git a/lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp b/lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp index 7157df03b72..b3904bc8d86 100644 --- a/lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp +++ b/lld/lib/ReaderWriter/ELF/ELFLinkingContext.cpp @@ -226,30 +226,20 @@ static void buildSearchPath(SmallString<128> &path, StringRef dir, } ErrorOr<StringRef> ELFLinkingContext::searchLibrary(StringRef libName) const { - bool foundFile = false; - StringRef pathref; SmallString<128> path; for (StringRef dir : _inputSearchPaths) { // Search for dynamic library if (!_isStaticExecutable) { buildSearchPath(path, dir, _sysrootPath); llvm::sys::path::append(path, Twine("lib") + libName + ".so"); - pathref = path.str(); - if (llvm::sys::fs::exists(pathref)) { - foundFile = true; - } + if (llvm::sys::fs::exists(path.str())) + return StringRef(*new (_allocator) std::string(path.str())); } // Search for static libraries too - if (!foundFile) { - buildSearchPath(path, dir, _sysrootPath); - llvm::sys::path::append(path, Twine("lib") + libName + ".a"); - pathref = path.str(); - if (llvm::sys::fs::exists(pathref)) { - foundFile = true; - } - } - if (foundFile) - return StringRef(*new (_allocator) std::string(pathref)); + buildSearchPath(path, dir, _sysrootPath); + llvm::sys::path::append(path, Twine("lib") + libName + ".a"); + if (llvm::sys::fs::exists(path.str())) + return StringRef(*new (_allocator) std::string(path.str())); } if (!llvm::sys::fs::exists(libName)) return llvm::make_error_code(llvm::errc::no_such_file_or_directory); |

