]> granicus.if.org Git - clang/commitdiff
Driver: Add -fno-profile-arcs to go with -fprofile-arcs
authorJustin Bogner <mail@justinbogner.com>
Thu, 7 Aug 2014 03:14:34 +0000 (03:14 +0000)
committerJustin Bogner <mail@justinbogner.com>
Thu, 7 Aug 2014 03:14:34 +0000 (03:14 +0000)
This is a trivial gcc-compatible change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215051 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Driver/Options.td
lib/Driver/ToolChains.cpp
lib/Driver/Tools.cpp

index 55f669b223bcf41ec2e1eaee684189991c2c0076..3e2d0277fc93e81f0c07e38b76954f34882e47c5 100644 (file)
@@ -822,6 +822,7 @@ def fno_pic : Flag<["-"], "fno-pic">, Group<f_Group>;
 def fpie : Flag<["-"], "fpie">, Group<f_Group>;
 def fno_pie : Flag<["-"], "fno-pie">, Group<f_Group>;
 def fprofile_arcs : Flag<["-"], "fprofile-arcs">, Group<f_Group>;
+def fno_profile_arcs : Flag<["-"], "fno-profile-arcs">, Group<f_Group>;
 def fprofile_generate : Flag<["-"], "fprofile-generate">, Group<f_Group>;
 def framework : Separate<["-"], "framework">, Flags<[LinkerInput]>;
 def frandom_seed_EQ : Joined<["-"], "frandom-seed=">, Group<clang_ignored_f_Group>;
index 63ad2619d9cda91a217466d1a0f164cd8e7c8257..ad82504f3d9cad67e040787d0ca127b67288361b 100644 (file)
@@ -333,7 +333,8 @@ void DarwinClang::AddLinkRuntimeLibArgs(const ArgList &Args,
   }
 
   // If we are building profile support, link that library in.
-  if (Args.hasArg(options::OPT_fprofile_arcs) ||
+  if (Args.hasFlag(options::OPT_fprofile_arcs, options::OPT_fno_profile_arcs,
+                   false) ||
       Args.hasArg(options::OPT_fprofile_generate) ||
       Args.hasArg(options::OPT_fprofile_instr_generate) ||
       Args.hasArg(options::OPT_fcreate_profile) ||
index c28283fddeace5a4394bc17bfb6607691e0ed2fd..86a05cd28c495b114fb03a52739f61e9e32186af 100644 (file)
@@ -2105,7 +2105,8 @@ static void addClangRTLinux(
 
 static void addProfileRT(
     const ToolChain &TC, const ArgList &Args, ArgStringList &CmdArgs) {
-  if (!(Args.hasArg(options::OPT_fprofile_arcs) ||
+  if (!(Args.hasFlag(options::OPT_fprofile_arcs, options::OPT_fno_profile_arcs,
+                     false) ||
         Args.hasArg(options::OPT_fprofile_generate) ||
         Args.hasArg(options::OPT_fprofile_instr_generate) ||
         Args.hasArg(options::OPT_fcreate_profile) ||
@@ -3226,7 +3227,8 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
   if (Args.hasArg(options::OPT_ftest_coverage) ||
       Args.hasArg(options::OPT_coverage))
     CmdArgs.push_back("-femit-coverage-notes");
-  if (Args.hasArg(options::OPT_fprofile_arcs) ||
+  if (Args.hasFlag(options::OPT_fprofile_arcs, options::OPT_fno_profile_arcs,
+                   false) ||
       Args.hasArg(options::OPT_coverage))
     CmdArgs.push_back("-femit-coverage-data");