about summary refs log tree commit diff homepage
diff options
context:
space:
mode:
authorCristian Cadar <c.cadar@imperial.ac.uk>2018-12-18 14:53:46 +0000
committerMartinNowack <martin.nowack@gmail.com>2018-12-19 21:26:48 +0000
commit5f167edf436f1ef735e5c89f6e350d11ec7c7854 (patch)
tree5e7fdbdf5851394e9540fc14d07092f753d84d69
parentfa2acfc0eb4fcd4df47a5346f300fc5919f7a601 (diff)
downloadklee-5f167edf436f1ef735e5c89f6e350d11ec7c7854.tar.gz
Added test case option category
-rw-r--r--tools/klee/main.cpp69
1 files changed, 42 insertions, 27 deletions
diff --git a/tools/klee/main.cpp b/tools/klee/main.cpp
index c7a19df6..9a258fb8 100644
--- a/tools/klee/main.cpp
+++ b/tools/klee/main.cpp
@@ -72,56 +72,71 @@ namespace {
   cl::opt<std::string>
   InputFile(cl::desc("<input bytecode>"), cl::Positional, cl::init("-"));
 
-  cl::opt<std::string>
-  EntryPoint("entry-point",
-               cl::desc("Consider the function with the given name as the entrypoint"),
-               cl::init("main"));
-
-  cl::opt<std::string>
-  RunInDir("run-in", cl::desc("Change to the given directory prior to executing"));
 
-  cl::opt<std::string>
-  Environ("environ", cl::desc("Parse environ from given file (in \"env\" format)"));
+  /*** Test case options ***/
 
-  cl::list<std::string>
-  InputArgv(cl::ConsumeAfter,
-            cl::desc("<program arguments>..."));
-
-  cl::opt<bool>
-  NoOutput("no-output",
-           cl::desc("Don't generate test files"));
-
-  cl::opt<bool>
-  WarnAllExternals("warn-all-externals",
-                   cl::desc("Give initial warning for all externals."));
+  cl::OptionCategory TestCaseCat("Test case options",
+                                 "These options select the files to generate for each test case.");
 
   cl::opt<bool>
   WriteCVCs("write-cvcs",
-            cl::desc("Write .cvc files for each test case"));
+            cl::desc("Write .cvc files for each test case (default=false)"),
+            cl::cat(TestCaseCat));
 
   cl::opt<bool>
   WriteKQueries("write-kqueries",
-            cl::desc("Write .kquery files for each test case"));
+                cl::desc("Write .kquery files for each test case (default=false)"),
+                cl::cat(TestCaseCat));
 
   cl::opt<bool>
   WriteSMT2s("write-smt2s",
-            cl::desc("Write .smt2 (SMT-LIBv2) files for each test case"));
+             cl::desc("Write .smt2 (SMT-LIBv2) files for each test case (default=false)"),
+             cl::cat(TestCaseCat));
 
   cl::opt<bool>
   WriteCov("write-cov",
-           cl::desc("Write coverage information for each test case"));
+           cl::desc("Write coverage information for each test case (default=false)"),
+           cl::cat(TestCaseCat));
 
   cl::opt<bool>
   WriteTestInfo("write-test-info",
-                cl::desc("Write additional test case information"));
+                cl::desc("Write additional test case information (default=false)"),
+                cl::cat(TestCaseCat));
 
   cl::opt<bool>
   WritePaths("write-paths",
-                cl::desc("Write .path files for each test case"));
+             cl::desc("Write .path files for each test case (default=false)"),
+             cl::cat(TestCaseCat));
 
   cl::opt<bool>
   WriteSymPaths("write-sym-paths",
-                cl::desc("Write .sym.path files for each test case"));
+                cl::desc("Write .sym.path files for each test case (default=false)"),
+                cl::cat(TestCaseCat));
+
+
+
+  cl::opt<std::string>
+  EntryPoint("entry-point",
+               cl::desc("Consider the function with the given name as the entrypoint"),
+               cl::init("main"));
+
+  cl::opt<std::string>
+  RunInDir("run-in", cl::desc("Change to the given directory prior to executing"));
+
+  cl::opt<std::string>
+  Environ("environ", cl::desc("Parse environ from given file (in \"env\" format)"));
+
+  cl::list<std::string>
+  InputArgv(cl::ConsumeAfter,
+            cl::desc("<program arguments>..."));
+
+  cl::opt<bool>
+  NoOutput("no-output",
+           cl::desc("Don't generate test files"));
+
+  cl::opt<bool>
+  WarnAllExternals("warn-all-externals",
+                   cl::desc("Give initial warning for all externals."));
 
   cl::opt<bool>
   OptExitOnError("exit-on-error",