]> granicus.if.org Git - clang/commitdiff
Tablegenify -g options.
authorChad Rosier <mcrosier@apple.com>
Mon, 7 Nov 2011 19:51:54 +0000 (19:51 +0000)
committerChad Rosier <mcrosier@apple.com>
Mon, 7 Nov 2011 19:51:54 +0000 (19:51 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144001 91177308-0d34-0410-b5e6-96231b3b80d8

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

index 61e59677176c940f86eeddf90b234e4049594105..68d132dc17e78aa2c7b8496dbe0ec8f93bbb466e 100644 (file)
@@ -512,13 +512,16 @@ def fzero_initialized_in_bss : Flag<"-fzero-initialized-in-bss">, Group<f_Group>
 def ffunction_sections: Flag <"-ffunction-sections">, Group<f_Group>;
 def fdata_sections : Flag <"-fdata-sections">, Group<f_Group>;
 def f : Joined<"-f">, Group<f_Group>;
-def g0 : Joined<"-g0">, Group<g_Group>;
-def g3 : Joined<"-g3">, Group<g_Group>;
-def gfull : Joined<"-gfull">, Group<g_Group>;
-def gstabs : Joined<"-gstabs">, Group<g_Group>;
-def gused : Joined<"-gused">, Group<g_Group>;
+def g0 : Flag<"-g0">, Group<g_Group>;
+def g3 : Flag<"-g3">, Group<g_Group>;
+def gdwarf2 : Flag<"-gdwarf-2">, Group<g_Group>;
+def gfull : Flag<"-gfull">, Group<g_Group>;
+def gstabs : Flag<"-gstabs">, Group<g_Group>;
+def gstabsplus : Flag<"-gstabs+">, Group<g_Group>;
+def gstabs1 : Flag<"-gstabs1">, Group<g_Group>;
+def gstabs2 : Flag<"-gstabs2">, Group<g_Group>;
+def gused : Flag<"-gused">, Group<g_Group>;
 def g_Flag : Flag<"-g">, Group<g_Group>;
-def g_Joined : Joined<"-g">, Group<g_Group>;
 def headerpad__max__install__names : Joined<"-headerpad_max_install_names">;
 def index_header_map : Flag<"-index-header-map">;
 def idirafter : JoinedOrSeparate<"-idirafter">, Group<clang_i_Group>;
index 64b538d145217d8b99bba8d5b25f2134a51cae0c..b459a7a05fcaacee24a7621d74e9a08aa0a07e86 100644 (file)
@@ -1458,22 +1458,7 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
   Args.ClaimAllArgs(options::OPT_g_Group);
   if (Arg *A = Args.getLastArg(options::OPT_g_Group))
     if (!A->getOption().matches(options::OPT_g0)) {
-      const std::string &ArgString = A->getAsString(Args);
-      bool Valid_g = llvm::StringSwitch<bool>(ArgString)
-        .Case("-g", true)
-        .Case("-g3", true)
-        .Case("-gdwarf-2", true)
-        .Case("-gstabs", true)
-        .Case("-gstabs+", true)
-        .Case("-gstabs1", true)
-        .Case("-gstabs2", true)
-        .Case("-gfull", true)
-        .Case("-gused", true)
-        .Default(false);
-      if (Valid_g)
         CmdArgs.push_back("-g");
-      else
-        D.Diag(diag::warn_drv_clang_unsupported) << ArgString;
     }
 
   Args.AddAllArgs(CmdArgs, options::OPT_ffunction_sections);