diff --git a/clang/lib/Driver/ToolChains/Darwin.cpp b/clang/lib/Driver/ToolChains/Darwin.cpp index ab984271555bf9..a113d05cc579a6 100644 --- a/clang/lib/Driver/ToolChains/Darwin.cpp +++ b/clang/lib/Driver/ToolChains/Darwin.cpp @@ -533,7 +533,8 @@ void darwin::Linker::ConstructJob(Compilation &C, const JobAction &JA, // we follow suite for ease of comparison. AddLinkArgs(C, Args, CmdArgs, Inputs); - if (checkRemarksOptions(getToolChain().getDriver(), Args, + if (willEmitRemarks(Args) && + checkRemarksOptions(getToolChain().getDriver(), Args, getToolChain().getTriple())) renderRemarksOptions(Args, CmdArgs, getToolChain().getTriple(), Output, JA); diff --git a/clang/test/Driver/darwin-opt-record-ld.c b/clang/test/Driver/darwin-opt-record-ld.c index 0e1e312c493d40..83630ed01da8b5 100644 --- a/clang/test/Driver/darwin-opt-record-ld.c +++ b/clang/test/Driver/darwin-opt-record-ld.c @@ -2,6 +2,10 @@ // RUN: touch %t.o // +// Check that we're not passing -lto-pass-remarks-output if not requested +// RUN: %clang -target x86_64-apple-darwin12 %t.o -### -o foo/bar.out 2> %t.log +// RUN: FileCheck -check-prefix=NO_PASS_REMARKS_OUTPUT %s < %t.log +// NO_PASS_REMARKS_OUTPUT-NOT: -lto-pass-remarks // Check that we're passing -lto-pass-remarks-output for LTO // RUN: %clang -target x86_64-apple-darwin12 %t.o -fsave-optimization-record -### -o foo/bar.out 2> %t.log // RUN: FileCheck -check-prefix=PASS_REMARKS_OUTPUT %s < %t.log