[PATCH] D65556: Phabricator D49466
Dan McGregor via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 31 21:30:22 PDT 2019
dankm created this revision.
Herald added subscribers: llvm-commits, cfe-commits, hiraditya, emaste.
Herald added projects: clang, LLVM.
path prefix mapping: enforce path matching
Force the prefix string to match a complete prefix in the
path to remap, and strip any trailing path separators from
the resulting path.
Allows -ffile-prefix-map=/a=b /a/test.c to be remapped to b/test.c
and -ffile-prefix-map==/fake_prefix /a/test.c to become
/fake_prefix/a/test.c.
Likewise, -ffile-prefix-map=/a= /a/test.c becomes test.c instead of
/test.c. For the latter you'd use -ffile-prefix-map=/a=/.
Merge remote-tracking branch 'llvm/master' into D49466 <https://reviews.llvm.org/D49466>
Do not remap MainFileName twice.
Merge remote-tracking branch 'llvm/master' into D49466 <https://reviews.llvm.org/D49466>
Path: enhance prefix mapping
Return true when a path is remapped, and allow replacing the
original path entirely.
Break on first match.
Merge remote-tracking branch 'llvm/master' into D49466 <https://reviews.llvm.org/D49466>
Style fix
Unit test updates
Clean up path handling some more
Rewrite path prefix replacement
Add a bunch of tests for odd corner cases.
Merge remote-tracking branch 'llvm/master' into D49466 <https://reviews.llvm.org/D49466>
Address path feedback
Use new flag in clang
Get contract in order
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D65556
Files:
clang/include/clang/Basic/DiagnosticDriverKinds.td
clang/include/clang/Driver/Options.td
clang/include/clang/Lex/PreprocessorOptions.h
clang/lib/CodeGen/CGDebugInfo.cpp
clang/lib/CodeGen/CGDebugInfo.h
clang/lib/Driver/ToolChains/Clang.cpp
clang/lib/Driver/ToolChains/FreeBSD.cpp
clang/lib/Driver/ToolChains/Gnu.cpp
clang/lib/Frontend/CompilerInvocation.cpp
clang/lib/Lex/PPMacroExpansion.cpp
clang/test/CodeGen/debug-prefix-map.c
clang/test/Driver/debug-prefix-map.S
clang/test/Driver/debug-prefix-map.c
clang/test/Preprocessor/file_test.c
clang/test/Preprocessor/file_test.h
llvm/include/llvm/Support/Path.h
llvm/lib/Support/Path.cpp
llvm/unittests/Support/Path.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D65556.212722.patch
Type: text/x-patch
Size: 22097 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190801/2861b240/attachment.bin>
More information about the llvm-commits
mailing list