summaryrefslogtreecommitdiff
path: root/checklink/Validator.ml
diff options
context:
space:
mode:
authorGravatar varobert <varobert@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2012-06-04 08:53:56 +0000
committerGravatar varobert <varobert@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2012-06-04 08:53:56 +0000
commit6256626f743bfcdd488fa1ec9d086d14f11109b4 (patch)
tree732c489f836a3eddd2eebcf8f66aa080d0eb0ce7 /checklink/Validator.ml
parentd4b3174fb44f4c790c258932f8f4d27ad73aefd7 (diff)
checklink: improved user-friendliness
Command-line options have been renamed and reordered. Error messages verbosity is more fine-grained. Possibly spurious debug messages are more clearly separated from the actual conclusions of the process. git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@1913 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'checklink/Validator.ml')
-rw-r--r--checklink/Validator.ml34
1 files changed, 22 insertions, 12 deletions
diff --git a/checklink/Validator.ml b/checklink/Validator.ml
index 34c9cbc..1edcdb4 100644
--- a/checklink/Validator.ml
+++ b/checklink/Validator.ml
@@ -23,29 +23,39 @@ let add_disassemble s =
option_disassemble := true
let options = [
+ (* Main options *)
"-exe", Arg.String set_elf_file,
"<filename> Specify the ELF executable file to analyze";
- "-disass", Arg.String add_disassemble,
- "<symname> Disassemble the symbol with specified name (can be repeated)";
+ (* Parsing behavior *)
+ "-relaxed", Arg.Set ELF_parsers.relaxed,
+ "Allows the following behaviors in the ELF parser:
+\t* Use of a fallback heuristic to resolve symbols bootstrapped at load time";
+ (* Printing behavior *)
+ "-no-exhaustive", Arg.Clear Check.exhaustivity,
+ "Disable the exhaustivity check of ELF function and data symbols";
+ "-list-missing", Arg.Set Check.list_missing,
+ "List function and data symbols that were missing in the exhaustivity check";
+ (* Alternative outputs *)
"-debug", Arg.Set Check.debug,
"Print a detailed trace of verification";
- "-noexhaust", Arg.Clear Check.exhaustivity,
- "Disable the exhaustivity check of ELF function and data symbols";
- "-printelf", Arg.Set option_printelf,
+ "-disass", Arg.String add_disassemble,
+ "<symname> Disassemble the symbol with specified name (can be repeated)";
+ "-print-elf", Arg.Set option_printelf,
"Print the contents of the unanalyzed ELF executable";
- "-printelfmap", Arg.Set Check.print_elfmap,
+ (* ELF map related *)
+ "-print-elfmap", Arg.Set Check.print_elfmap,
"Print a map of the analyzed ELF executable";
- "-dumpelfmap", Arg.Set Check.dump_elfmap,
+ "-verbose-elfmap", Arg.Set Frameworks.verbose_elfmap,
+ "Show sections and symbols contained in the unknown parts of the elf map";
+ (* Fuzz testing related *)
+ "-dump-elfmap", Arg.Set Check.dump_elfmap,
"Dump an ELF map to <exename>.elfmap, for use with random fuzzing";
"-fuzz", Arg.Set option_fuzz,
"Random fuzz testing";
- "-bytefuzz", Arg.Set option_bytefuzz,
+ "-fuzz-byte", Arg.Set option_bytefuzz,
"Random fuzz testing byte per byte";
- "-debugfuzz", Arg.Set Fuzz.fuzz_debug,
+ "-fuzz-debug", Arg.Set Fuzz.fuzz_debug,
"Print a detailed trace of ongoing fuzz testing";
- "-relaxed", Arg.Set ELF_parsers.relaxed,
- "Allows the following behaviors in the ELF parser:
-\t* Use of a fallback heuristic to resolve symbols bootstrapped at load time";
]
let anonymous arg =