From 480cb9918d0a16bc7869e0c6066699e870e50e83 Mon Sep 17 00:00:00 2001 From: Nick Lewycky Date: Wed, 4 May 2011 20:46:58 +0000 Subject: Record where the GCOV data files should be placed. llvm-svn: 130866 --- clang/lib/Driver/Tools.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'clang/lib/Driver/Tools.cpp') diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index 3592fc5ead6..f4e0f2e3590 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -1303,6 +1303,18 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA, Args.hasArg(options::OPT_coverage)) CmdArgs.push_back("-femit-coverage-data"); + if (C.getArgs().hasArg(options::OPT_c) || + C.getArgs().hasArg(options::OPT_S)) { + if (Output.isFilename()) { + llvm::StringRef CoverageDir = + llvm::sys::path::parent_path(Output.getFilename()); + if (!CoverageDir.empty()) { + CmdArgs.push_back("-coverage-dir"); + CmdArgs.push_back(Args.MakeArgString(CoverageDir)); + } + } + } + Args.AddLastArg(CmdArgs, options::OPT_nostdinc); Args.AddLastArg(CmdArgs, options::OPT_nostdincxx); Args.AddLastArg(CmdArgs, options::OPT_nobuiltininc); -- cgit v1.2.3