Move MCOptions that aren't shared between programs into their specific
authorEric Christopher <echristo@gmail.com>
Wed, 21 May 2014 21:05:09 +0000 (21:05 +0000)
committerEric Christopher <echristo@gmail.com>
Wed, 21 May 2014 21:05:09 +0000 (21:05 +0000)
program and have them initialize the MCOptions struct explicitly.

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

include/llvm/MC/MCTargetOptionsCommandFlags.h
test/DebugInfo/2010-03-19-DbgDeclare.ll
test/MC/ELF/noexec.s
tools/llc/llc.cpp
tools/llvm-mc/llvm-mc.cpp

index 24e683f61723ff66c1e39394381d6e85b053b2a3..17a117a2a3bd11bc0a4ce0a62996ded53e89cd2f 100644 (file)
@@ -33,31 +33,11 @@ cl::opt<bool> RelaxAll("mc-relax-all",
                        cl::desc("When used with filetype=obj, "
                                 "relax all fixups in the emitted object file"));
 
-cl::opt<bool> EnableDwarfDirectory(
-    "enable-dwarf-directory", cl::Hidden,
-    cl::desc("Use .file directives with an explicit directory."));
-
-cl::opt<bool> NoExecStack("mc-no-exec-stack",
-                          cl::desc("File doesn't need an exec stack"));
-
-cl::opt<bool> ShowMCEncoding("show-mc-encoding", cl::Hidden,
-                             cl::desc("Show encoding in .s output"));
-cl::opt<bool> ShowMCInst("show-mc-inst", cl::Hidden,
-                         cl::desc("Show instruction structure in .s output"));
-
-cl::opt<bool> AsmVerbose("asm-verbose", cl::desc("Add comments to directives."),
-                         cl::init(false));
-
 static inline MCTargetOptions InitMCTargetOptionsFromFlags() {
   MCTargetOptions Options;
   Options.SanitizeAddress =
       (AsmInstrumentation == MCTargetOptions::AsmInstrumentationAddress);
   Options.MCRelaxAll = RelaxAll;
-  Options.MCUseDwarfDirectory = EnableDwarfDirectory;
-  Options.MCNoExecStack = NoExecStack;
-  Options.ShowMCEncoding = ShowMCEncoding;
-  Options.ShowMCInst = ShowMCInst;
-  Options.AsmVerbose = AsmVerbose;
   return Options;
 }
 
index 0c0a4dcb63e8743c49feabd3ee1ba2fa0c2bd686..1ff7fa88bdc3581326706846c3af08537ecc8b55 100644 (file)
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -verify -S -asm-verbose | FileCheck %s
+; RUN: llvm-as < %s | opt -verify -S | FileCheck %s
 
 ; CHECK: lang 0x8001
 
index 33cb8ae3452b6c4bc5f1b5fbee29154440e28817..28f50cb7f692bd0a30b8bdf53e7c47948f7b421f 100644 (file)
@@ -1,4 +1,4 @@
-// RUN: llvm-mc -mc-no-exec-stack -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | llvm-readobj -s -t | FileCheck  %s
+// RUN: llvm-mc -no-exec-stack -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | llvm-readobj -s -t | FileCheck  %s
 
 // CHECK:        Section {
 // CHECK:          Index: 4
index 47be4a8b71adc845a0e4d2792e1add19415d426c..09ff4613b9720bc526dd5a7d98408f2fc8e665c5 100644 (file)
@@ -81,7 +81,18 @@ static cl::opt<bool> NoVerify("disable-verify", cl::Hidden,
 static cl::opt<bool> DisableSimplifyLibCalls("disable-simplify-libcalls",
                                              cl::desc("Disable simplify-libcalls"));
 
-static int compileModule(char**, LLVMContext&);
+static cl::opt<bool> ShowMCEncoding("show-mc-encoding", cl::Hidden,
+                                    cl::desc("Show encoding in .s output"));
+
+static cl::opt<bool> EnableDwarfDirectory(
+    "enable-dwarf-directory", cl::Hidden,
+    cl::desc("Use .file directives with an explicit directory."));
+
+static cl::opt<bool> AsmVerbose("asm-verbose",
+                                cl::desc("Add comments to directives."),
+                                cl::init(true));
+
+static int compileModule(char **, LLVMContext &);
 
 // GetFileNameRoot - Helper function to get the basename of a filename.
 static inline std::string
@@ -270,10 +281,9 @@ static int compileModule(char **argv, LLVMContext &Context) {
 
   TargetOptions Options = InitTargetOptionsFromCodeGenFlags();
   Options.DisableIntegratedAS = NoIntegratedAssembler;
-
-  // Override default to generate verbose assembly unless we've seen the flag.
-  if (AsmVerbose.getNumOccurrences() == 0)
-    Options.MCOptions.AsmVerbose = true;
+  Options.MCOptions.ShowMCEncoding = ShowMCEncoding;
+  Options.MCOptions.MCUseDwarfDirectory = EnableDwarfDirectory;
+  Options.MCOptions.AsmVerbose = AsmVerbose;
 
   std::unique_ptr<TargetMachine> target(
       TheTarget->createTargetMachine(TheTriple.getTriple(), MCPU, FeaturesStr,
index 02dcfcd2dd0bcae2d7803abdbe620161585c3d61..84d578b4d008a7b97cb36c6dda09f3479dc35a18 100644 (file)
@@ -159,6 +159,9 @@ MainFileName("main-file-name",
 static cl::opt<bool> SaveTempLabels("save-temp-labels",
                                     cl::desc("Don't discard temporary labels"));
 
+static cl::opt<bool> NoExecStack("no-exec-stack",
+                                 cl::desc("File doesn't need an exec stack"));
+
 enum ActionType {
   AC_AsLex,
   AC_Assemble,