diff options
author | Nick Lewycky <nicholas@mxc.ca> | 2011-05-04 20:46:58 +0000 |
---|---|---|
committer | Nick Lewycky <nicholas@mxc.ca> | 2011-05-04 20:46:58 +0000 |
commit | 5ea4f44e34449a78d6b38aa47c14b527839d7aac (patch) | |
tree | 94d54de826698e0de6f81a1d3fb9cd798b567956 /lib/Driver/Tools.cpp | |
parent | b107dd02f5e365f60b036b8a27c784f2d0d0a855 (diff) |
Record where the GCOV data files should be placed.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130866 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Driver/Tools.cpp')
-rw-r--r-- | lib/Driver/Tools.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp index 3592fc5ead..f4e0f2e359 100644 --- a/lib/Driver/Tools.cpp +++ b/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); |