diff options
| author | Rui Ueyama <ruiu@google.com> | 2015-01-30 21:03:19 +0000 |
|---|---|---|
| committer | Rui Ueyama <ruiu@google.com> | 2015-01-30 21:03:19 +0000 |
| commit | a9a6f55840ff2909455ef578e179c8556de5822d (patch) | |
| tree | c1d8950c3f021ea268cb5d11a6145950362b31ac | |
| parent | 16f5e56703827527a8dd19388f8c77c656d29dbe (diff) | |
| download | bcm5719-llvm-a9a6f55840ff2909455ef578e179c8556de5822d.tar.gz bcm5719-llvm-a9a6f55840ff2909455ef578e179c8556de5822d.zip | |
ELF: Fix a bug in -l.
If a linker script is given with -l, LLD failed to read the file.
The bug was introduced in 227341.
llvm-svn: 227610
| -rw-r--r-- | lld/lib/Driver/GnuLdDriver.cpp | 2 | ||||
| -rw-r--r-- | lld/test/elf/group-cmd-search.test | 7 |
2 files changed, 8 insertions, 1 deletions
diff --git a/lld/lib/Driver/GnuLdDriver.cpp b/lld/lib/Driver/GnuLdDriver.cpp index d023624fefb..bca453a615c 100644 --- a/lld/lib/Driver/GnuLdDriver.cpp +++ b/lld/lib/Driver/GnuLdDriver.cpp @@ -623,7 +623,7 @@ bool GnuLdDriver::parse(int argc, const char *argv[], if (ctx->logInputFiles()) diag << path << "\n"; ErrorOr<std::unique_ptr<MemoryBuffer>> mb = - MemoryBuffer::getFileOrSTDIN(path); + MemoryBuffer::getFileOrSTDIN(realpath); if (std::error_code ec = mb.getError()) { diag << "Cannot open " << path << ": " << ec.message() << "\n"; return false; diff --git a/lld/test/elf/group-cmd-search.test b/lld/test/elf/group-cmd-search.test index 2f5c0f48501..5e153c1ac1a 100644 --- a/lld/test/elf/group-cmd-search.test +++ b/lld/test/elf/group-cmd-search.test @@ -124,4 +124,11 @@ RUN: lld -flavor gnu -target x86_64 -shared --sysroot=%p/Inputs \ RUN: -L%p/Inputs %p/Inputs/use-shared.x86-64 \ RUN: %s -o %t7 */ + +/* +RUN: lld -flavor gnu -target x86_64 -shared \ +RUN: -L%p/Inputs %p/Inputs/use-shared.x86-64 \ +RUN: -l:group-cmd-search-1.ls -o %t9 +*/ + GROUP ( /shared.so-x86-64 ) |

