From d1a681f488857df373f5d340cd08e9d731bc8aa8 Mon Sep 17 00:00:00 2001 From: Cristian Cadar Date: Thu, 14 Mar 2019 23:09:16 +0000 Subject: Moved the options in Optimize.cpp to the module category --- lib/Module/Optimize.cpp | 52 +++++++++++++++++++++++++++++++------------------ 1 file changed, 33 insertions(+), 19 deletions(-) diff --git a/lib/Module/Optimize.cpp b/lib/Module/Optimize.cpp index ff04573e..d55fd0c3 100644 --- a/lib/Module/Optimize.cpp +++ b/lib/Module/Optimize.cpp @@ -17,6 +17,7 @@ #include "klee/Config/Version.h" #include "klee/Internal/Module/LLVMPassManager.h" +#include "klee/OptionCategories.h" #ifdef USE_WORKAROUND_LLVM_PR39177 #include "Passes.h" @@ -56,32 +57,45 @@ using namespace llvm; // Don't verify at the end -static cl::opt DontVerify("disable-verify", cl::ReallyHidden); - -static cl::opt DisableInline("disable-inlining", - cl::desc("Do not run the inliner pass")); - -static cl::opt DisableInternalize("disable-internalize", - cl::desc("Do not mark all symbols as internal")); - -static cl::opt VerifyEach("verify-each", - cl::desc("Verify intermediate results of all passes")); +static cl::opt + DontVerify("disable-verify", cl::ReallyHidden, + cl::desc("Do not verify the module integrity (default=false)"), + cl::init(false), cl::cat(klee::ModuleCat)); + +static cl::opt + DisableInline("disable-inlining", + cl::desc("Do not run the inliner pass (default=false)"), + cl::init(false), cl::cat(klee::ModuleCat)); + +static cl::opt DisableInternalize( + "disable-internalize", + cl::desc("Do not mark all symbols as internal (default=false)"), + cl::init(false), cl::cat(klee::ModuleCat)); + +static cl::opt VerifyEach( + "verify-each", + cl::desc("Verify intermediate results of all passes (default=false)"), + cl::init(false), + cl::cat(klee::ModuleCat)); static cl::alias ExportDynamic("export-dynamic", - cl::aliasopt(DisableInternalize), - cl::desc("Alias for -disable-internalize")); + cl::aliasopt(DisableInternalize), + cl::desc("Alias for -disable-internalize")); -static cl::opt Strip("strip-all", - cl::desc("Strip all symbol info from executable")); +static cl::opt + Strip("strip-all", cl::desc("Strip all symbol information from executable"), + cl::init(false), cl::cat(klee::ModuleCat)); -static cl::alias A0("s", cl::desc("Alias for --strip-all"), - cl::aliasopt(Strip)); +static cl::alias A0("s", cl::desc("Alias for --strip-all"), + cl::aliasopt(Strip)); -static cl::opt StripDebug("strip-debug", - cl::desc("Strip debugger symbol info from executable")); +static cl::opt + StripDebug("strip-debug", + cl::desc("Strip debugger symbol info from executable"), + cl::init(false), cl::cat(klee::ModuleCat)); static cl::alias A1("S", cl::desc("Alias for --strip-debug"), - cl::aliasopt(StripDebug)); + cl::aliasopt(StripDebug)); // A utility function that adds a pass to the pass manager but will also add // a verifier pass after if we're supposed to verify. -- cgit 1.4.1