summaryrefslogtreecommitdiff
path: root/tools/llc/llc.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/llc/llc.cpp')
-rw-r--r--tools/llc/llc.cpp29
1 files changed, 20 insertions, 9 deletions
diff --git a/tools/llc/llc.cpp b/tools/llc/llc.cpp
index 3e1dfbcae1..785f0a624c 100644
--- a/tools/llc/llc.cpp
+++ b/tools/llc/llc.cpp
@@ -24,22 +24,33 @@
using std::string;
using std::cerr;
-static cl::String InputFilename ("", "Input filename", cl::NoFlags, "-");
-static cl::String OutputFilename("o", "Output filename", cl::NoFlags, "");
-static cl::Flag Force ("f", "Overwrite output files");
-static cl::Flag DumpAsm ("d", "Print bytecode before native code generation", cl::Hidden);
-static cl::String TraceLibPath ("tracelibpath", "Path to libinstr for trace code", cl::Hidden, "");
+static cl::opt<string>
+InputFilename(cl::Positional, cl::desc("<input bytecode>"), cl::init("-"));
+
+static cl::opt<string>
+OutputFilename("o", cl::desc("Output filename"), cl::value_desc("filename"));
+
+static cl::opt<bool> Force("f", cl::desc("Overwrite output files"));
+
+static cl::opt<bool>
+DumpAsm("d", cl::desc("Print bytecode before native code generation"),
+ cl::Hidden);
+
+static cl::opt<string>
+TraceLibPath("tracelibpath", cl::desc("Path to libinstr for trace code"),
+ cl::value_desc("directory"), cl::Hidden);
enum TraceLevel {
TraceOff, TraceFunctions, TraceBasicBlocks
};
-static cl::Enum<enum TraceLevel> TraceValues("trace", cl::NoFlags,
- "Trace values through functions or basic blocks",
+static cl::opt<TraceLevel>
+TraceValues("trace", cl::desc("Trace values through functions or basic blocks"),
+ cl::values(
clEnumValN(TraceOff , "off", "Disable trace code"),
clEnumValN(TraceFunctions , "function", "Trace each function"),
- clEnumValN(TraceBasicBlocks, "basicblock", "Trace each basic block"), 0);
-
+ clEnumValN(TraceBasicBlocks, "basicblock", "Trace each basic block"),
+ 0));
// GetFileNameRoot - Helper function to get the basename of a filename...
static inline string GetFileNameRoot(const string &InputFilename) {