Home | History | Annotate | Download | only in tests
      1 usage: valgrind [options] prog-and-args
      2 
      3   tool-selection option, with default in [ ]:
      4     --tool=<name>             use the Valgrind tool named <name> [memcheck]
      5 
      6   basic user options for all Valgrind tools, with defaults in [ ]:
      7     -h --help                 show this message
      8     --help-debug              show this message, plus debugging options
      9     --version                 show version
     10     -q --quiet                run silently; only print error msgs
     11     -v --verbose              be more verbose -- show misc extra info
     12     --trace-children=no|yes   Valgrind-ise child processes (follow execve)? [no]
     13     --trace-children-skip=patt1,patt2,...    specifies a list of executables
     14                               that --trace-children=yes should not trace into
     15     --trace-children-skip-by-arg=patt1,patt2,...   same as --trace-children-skip=
     16                               but check the argv[] entries for children, rather
     17                               than the exe name, to make a follow/no-follow decision
     18     --child-silent-after-fork=no|yes omit child output between fork & exec? [no]
     19     --vgdb=no|yes|full        activate gdbserver? [yes]
     20                               full is slower but provides precise watchpoint/step
     21     --vgdb-error=<number>     invoke gdbserver after <number> errors [999999999]
     22                               to get started quickly, use --vgdb-error=0
     23                               and follow the on-screen directions
     24     --vgdb-stop-at=event1,event2,... invoke gdbserver for given events [none]
     25          where event is one of:
     26            startup exit valgrindabexit all none
     27     --track-fds=no|yes        track open file descriptors? [no]
     28     --time-stamp=no|yes       add timestamps to log messages? [no]
     29     --log-fd=<number>         log messages to file descriptor [2=stderr]
     30     --log-file=<file>         log messages to <file>
     31     --log-socket=ipaddr:port  log messages to socket ipaddr:port
     32 
     33   user options for Valgrind tools that report errors:
     34     --xml=yes                 emit error output in XML (some tools only)
     35     --xml-fd=<number>         XML output to file descriptor
     36     --xml-file=<file>         XML output to <file>
     37     --xml-socket=ipaddr:port  XML output to socket ipaddr:port
     38     --xml-user-comment=STR    copy STR verbatim into XML output
     39     --demangle=no|yes         automatically demangle C++ names? [yes]
     40     --num-callers=<number>    show <number> callers in stack traces [12]
     41     --error-limit=no|yes      stop showing new errors if too many? [yes]
     42     --error-exitcode=<number> exit code to return if errors found [0=disable]
     43     --error-markers=<begin>,<end> add lines with begin/end markers before/after
     44                               each error output in plain text mode [none]
     45     --show-below-main=no|yes  continue stack traces below main() [no]
     46     --default-suppressions=yes|no
     47                               load default suppressions [yes]
     48     --suppressions=<filename> suppress errors described in <filename>
     49     --gen-suppressions=no|yes|all    print suppressions for errors? [no]
     50     --db-attach=no|yes        start debugger when errors detected? [no]
     51                               Note: deprecated feature
     52     --db-command=<command>    command to start debugger [... -nw %f %p]
     53     --input-fd=<number>       file descriptor for input [0=stdin]
     54     --dsymutil=no|yes         run dsymutil on Mac OS X when helpful? [no]
     55     --max-stackframe=<number> assume stack switch for SP changes larger
     56                               than <number> bytes [2000000]
     57     --main-stacksize=<number> set size of main thread's stack (in bytes)
     58                               [min(max(current 'ulimit' value,1MB),16MB)]
     59 
     60   user options for Valgrind tools that replace malloc:
     61     --alignment=<number>      set minimum alignment of heap allocations [not used by this tool]
     62     --redzone-size=<number>   set minimum size of redzones added before/after
     63                               heap blocks (in bytes). [not used by this tool]
     64 
     65   uncommon user options for all Valgrind tools:
     66     --fullpath-after=         (with nothing after the '=')
     67                               show full source paths in call stacks
     68     --fullpath-after=string   like --fullpath-after=, but only show the
     69                               part of the path after 'string'.  Allows removal
     70                               of path prefixes.  Use this flag multiple times
     71                               to specify a set of prefixes to remove.
     72     --extra-debuginfo-path=path    absolute path to search for additional
     73                               debug symbols, in addition to existing default
     74                               well known search paths.
     75     --debuginfo-server=ipaddr:port    also query this server
     76                               (valgrind-di-server) for debug symbols
     77     --allow-mismatched-debuginfo=no|yes  [no]
     78                               for the above two flags only, accept debuginfo
     79                               objects that don't "match" the main object
     80     --smc-check=none|stack|all|all-non-file [stack]
     81                               checks for self-modifying code: none, only for
     82                               code found in stacks, for all code, or for all
     83                               code except that from file-backed mappings
     84     --read-inline-info=yes|no read debug info about inlined function calls
     85                               and use it to do better stack traces.  [yes]
     86                               on Linux/Android for Memcheck/Helgrind/DRD
     87                               only.  [no] for all other tools and platforms.
     88     --read-var-info=yes|no    read debug info on stack and global variables
     89                               and use it to print better error messages in
     90                               tools that make use of it (Memcheck, Helgrind,
     91                               DRD) [no]
     92     --vgdb-poll=<number>      gdbserver poll max every <number> basic blocks [5000]
     93     --vgdb-shadow-registers=no|yes   let gdb see the shadow registers [no]
     94     --vgdb-prefix=<prefix>    prefix for vgdb FIFOs [.../vgdb-pipe]
     95     --run-libc-freeres=no|yes free up glibc memory at exit on Linux? [yes]
     96     --sim-hints=hint1,hint2,...  activate unusual sim behaviours [none]
     97          where hint is one of:
     98            lax-ioctls fuse-compatible enable-outer
     99            no-inner-prefix no-nptl-pthread-stackcache none
    100     --fair-sched=no|yes|try   schedule threads fairly on multicore systems [no]
    101     --kernel-variant=variant1,variant2,...
    102          handle non-standard kernel variants [none]
    103          where variant is one of:
    104            bproc android-no-hw-tls
    105            android-gpu-sgx5xx android-gpu-adreno3xx none
    106     --merge-recursive-frames=<number>  merge frames between identical
    107            program counters in max <number> frames) [0]
    108     --num-transtab-sectors=<number> size of translated code cache [16]
    109            more sectors may increase performance, but use more memory.
    110     --avg-transtab-entry-size=<number> avg size in bytes of a translated
    111            basic block [0, meaning use tool provided default]
    112     --aspace-minaddr=0xPP     avoid mapping memory below 0xPP [guessed]
    113     --valgrind-stacksize=<number> size of valgrind (host) thread's stack
    114                                (in bytes) [1048576]
    115     --show-emwarns=no|yes     show warnings about emulation limits? [no]
    116     --require-text-symbol=:sonamepattern:symbolpattern    abort run if the
    117                               stated shared object doesn't have the stated
    118                               text symbol.  Patterns can contain ? and *.
    119     --soname-synonyms=syn1=pattern1,syn2=pattern2,... synonym soname
    120               specify patterns for function wrapping or replacement.
    121               To use a non-libc malloc library that is
    122                   in the main exe:  --soname-synonyms=somalloc=NONE
    123                   in libxyzzy.so:   --soname-synonyms=somalloc=libxyzzy.so
    124     --sigill-diagnostics=yes|no  warn about illegal instructions? [yes]
    125     --unw-stack-scan-thresh=<number>   Enable stack-scan unwind if fewer
    126                   than <number> good frames found  [0, meaning "disabled"]
    127                   NOTE: stack scanning is only available on arm-linux.
    128     --unw-stack-scan-frames=<number>   Max number of frames that can be
    129                   recovered by stack scanning [5]
    130     --resync-filter=no|yes|verbose [yes on MacOS, no on other OSes]
    131               attempt to avoid expensive address-space-resync operations
    132     --max-threads=<number>    maximum number of threads that valgrind can
    133                               handle [500]
    134 
    135   user options for Nulgrind:
    136     (none)
    137 
    138   Extra options read from ~/.valgrindrc, $VALGRIND_OPTS, ./.valgrindrc
    139 
    140   Nulgrind is Copyright (C) 2002-2013, and GNU GPL'd, by Nicholas Nethercote.
    141   Valgrind is Copyright (C) 2000-2013, and GNU GPL'd, by Julian Seward et al.
    142   LibVEX is Copyright (C) 2004-2013, and GNU GPL'd, by OpenWorks LLP et al.
    143 
    144   Bug reports, feedback, admiration, abuse, etc, to: www.valgrind.org.
    145 
    146