aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Driver/Driver.cpp
diff options
context:
space:
mode:
authorAlex Brachet <abrachet@google.com>2022-08-18 20:11:22 +0000
committerAlex Brachet <abrachet@google.com>2022-08-18 20:12:23 +0000
commit377dddf4a08335a79180dd1d7907cb98ceaa641a (patch)
treefdac99af07c7b4e6de430bbd6b37b8254bb8d03b /clang/lib/Driver/Driver.cpp
parent4d875910286ab3c51b1343a7468fd369454ae738 (diff)
downloadllvm-377dddf4a08335a79180dd1d7907cb98ceaa641a.zip
llvm-377dddf4a08335a79180dd1d7907cb98ceaa641a.tar.gz
llvm-377dddf4a08335a79180dd1d7907cb98ceaa641a.tar.bz2
[clang][Driver] Pass correct reproduce flag to lld-link
Additionally, the explicit linux target has been removed from the test. Differential Revision: https://reviews.llvm.org/D131214
Diffstat (limited to 'clang/lib/Driver/Driver.cpp')
-rw-r--r--clang/lib/Driver/Driver.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp
index 31cd586..d00f08d 100644
--- a/clang/lib/Driver/Driver.cpp
+++ b/clang/lib/Driver/Driver.cpp
@@ -1631,7 +1631,11 @@ void Driver::generateCompilationDiagnostics(
const char *TmpName = CreateTempFile(C, "linker-crash", "tar");
Command NewLLDInvocation = Cmd;
llvm::opt::ArgStringList ArgList = NewLLDInvocation.getArguments();
- ArgList.push_back(Saver.save(Twine{"--reproduce="} + TmpName).data());
+ StringRef ReproduceOption =
+ C.getDefaultToolChain().getTriple().isWindowsMSVCEnvironment()
+ ? "/reproduce:"
+ : "--reproduce=";
+ ArgList.push_back(Saver.save(Twine(ReproduceOption) + TmpName).data());
NewLLDInvocation.replaceArguments(std::move(ArgList));
// Redirect stdout/stderr to /dev/null.