hanchenye-llvm-project/lld
Thomas Preud'homme c42fe24754 [lld/ELF] PR44498: Support input filename in double quote
Summary:
Linker scripts allow filenames to be put in double quotes to prevent
characters in filenames that are part of the linker script syntax from
having their special meaning. Case in point the * wildcard character.

Availability of double quoting filenames also allows to fix a failure in
ELF/linkerscript/filename-spec.s when the path contain a @ which the
lexer consider as a special characters and thus break up a filename
containing it. This may happens under Jenkins which createspath such as
pipeline@2.

To avoid the need for escaping GlobPattern metacharacters in filename
in double quotes, GlobPattern::create is augmented with a new parameter
to request literal matching instead of relying on the presence of a
wildcard character in the pattern.

Reviewers: jhenderson, MaskRay, evgeny777, espindola, alexshap

Reviewed By: MaskRay

Subscribers: peter.smith, grimar, ruiu, emaste, arichardson, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D72517
2020-01-22 12:03:10 +00:00
..
COFF [COFF] Warn that LLD does not support /PDBSTRIPPED: 2020-01-15 15:11:19 -08:00
Common [lld/ELF] PR44498: Support input filename in double quote 2020-01-22 12:03:10 +00:00
ELF [lld/ELF] PR44498: Support input filename in double quote 2020-01-22 12:03:10 +00:00
MinGW LLD: Don't use the stderrOS stream in link before it's reassigned. 2019-11-21 10:55:03 -05:00
cmake/modules
docs Bump the trunk major version to 11 2020-01-15 13:38:01 +01:00
include/lld [lld/ELF] PR44498: Support input filename in double quote 2020-01-22 12:03:10 +00:00
lib [lld] Fix trivial typos in comments 2020-01-06 10:25:48 -08:00
test [lld/ELF] PR44498: Support input filename in double quote 2020-01-22 12:03:10 +00:00
tools/lld Make it possible to redirect not only errs() but also outs() 2019-11-18 11:18:06 +09:00
unittests Reapply: [MachO] Add a test for detecting reserved unit length. 2020-01-21 16:59:44 +07:00
utils
wasm [lld][WebAssembly] Use a more meaningful name for stub functions 2020-01-16 14:55:37 -08:00
.arcconfig
.clang-format
.gitignore
CMakeLists.txt try to unbreak build after 4b6d9ac392 2020-01-16 10:12:35 -05:00
CODE_OWNERS.TXT
LICENSE.TXT
README.md

README.md

LLVM Linker (lld)

This directory and its subdirectories contain source code for the LLVM Linker, a modular cross platform linker which is built as part of the LLVM compiler infrastructure project.

lld is open source software. You may freely distribute it under the terms of the license agreement found in LICENSE.txt.

Benchmarking

In order to make sure various developers can evaluate patches over the same tests, we create a collection of self contained programs.

It is hosted at https://s3-us-west-2.amazonaws.com/linker-tests/lld-speed-test.tar.xz

The current sha256 is 10eec685463d5a8bbf08d77f4ca96282161d396c65bd97dc99dbde644a31610f.