[lld] r268172 - ELF: --reproduce: quote pathnames for -L and other options.
Peter Collingbourne via llvm-commits
llvm-commits at lists.llvm.org
Mon May 2 11:10:57 PDT 2016
On Sat, Apr 30, 2016 at 3:46 PM, Rui Ueyama via llvm-commits <
llvm-commits at lists.llvm.org> wrote:
> Author: ruiu
> Date: Sat Apr 30 17:46:47 2016
> New Revision: 268172
>
> URL: http://llvm.org/viewvc/llvm-project?rev=268172&view=rev
> Log:
> ELF: --reproduce: quote pathnames for -L and other options.
>
> Previously, arguments for options that take pathnames were not rewritten.
>
> Modified:
> lld/trunk/ELF/DriverUtils.cpp
> lld/trunk/test/ELF/reproduce.s
>
> Modified: lld/trunk/ELF/DriverUtils.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/DriverUtils.cpp?rev=268172&r1=268171&r2=268172&view=diff
>
> ==============================================================================
> --- lld/trunk/ELF/DriverUtils.cpp (original)
> +++ lld/trunk/ELF/DriverUtils.cpp Sat Apr 30 17:46:47 2016
> @@ -137,6 +137,12 @@ static std::string quote(StringRef S) {
> return ("\"" + S + "\"").str();
> }
>
> +static std::string rewritePath(StringRef S) {
> + if (fs::exists(S))
> + return getDestPath(S);
> + return S;
> +}
> +
> // Copies all input files to Config->Reproduce directory and
> // create a response file as "response.txt", so that you can re-run
> // the same command with the same inputs just by executing
> @@ -157,25 +163,25 @@ void elf::createResponseFile(const llvm:
> raw_fd_ostream OS(Path, EC, sys::fs::OpenFlags::F_None);
> check(EC);
>
> - // Dump the command line to response.txt while copying files
> - // and rewriting paths.
> + // Copy the command line to response.txt while rewriting paths.
> for (auto *Arg : Args) {
> switch (Arg->getOption().getID()) {
> case OPT_reproduce:
> break;
> + case OPT_INPUT:
> + OS << quote(rewritePath(Arg->getValue())) << "\n";
> + break;
> + case OPT_L:
> + case OPT_dynamic_list:
> + case OPT_export_dynamic_symbol:
>
--export-dynamic-symbol does not take a path.
Thanks,
--
--
Peter
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160502/a95120cf/attachment-0001.html>
More information about the llvm-commits
mailing list