Command Line Switches

This section describes the command line switches that are currently supported by Pin.

Pin switches should appear after the pin command, but before the -t <tool> option. The following Pin switches are supported:

    -follow_execv        Execute all processes spawned by the execv class
                         system calls with Pin.

    -help                Print the help message. 

    -pause_tool <n>      Pause and print the PID so the debugger can be attached
                         after the tool is loaded.  Processing will resume after "n"
                         seconds.

    -logfile             Indicates the path and name of the log file.  The default
                         path is the current working directory. The default name
                         is pin.log.

    -unique_logfile      Appends the pid to the log file name.

    -injection <mode>    Where <mode> is one of dynamic, self, child, parent.
                         UNIX-only.  See @ref INJECTION.

    -inline              Inline simple analysis routines.

    -limit_code_cache    Max (in bytes) code cache size (0==unlimited, default).

    -mt_tool             Tool creates threads.

    -pid <pid #>         Attach Pin and the Pintool to an already running executable
                         with the given process id.

    -pin_memory_range    Restrict pin to a memory range, 0x80000000:0x90000000
                         or size: 0:0x10000000.

    -separate_memory     Redirect pin and tool memory allocation to separate area.

    -t <toolname>        Specifies the Pintool to use. If you are running a 32-bit
                         application in an IA-32 architecture, or a 64-bit
                         application on an IA-64 architecture, only -t <toolname>
                         is needed.If you are running an application on an
                         Intel(R) 64 architecture, where all of the components in
                         the chain are either 32-bit or 64-bit, but not both,
                         only -t <toolname> is needed.

    -t64 <toolname>      Specify 64-bit tool binary for Intel(R) 64 architecture.
                         See @ref MIXED-MODE

    -p32 <toolname>      Specify Pin binary for IA-32 architecture. See @ref MIXED-MODE

    -p64 <toolname>      Specify Pin binary for Intel(R) 64 architecture. See @ref MIXED-MODE

    -smc_support [1][0]  Enable (1) or disable (0) support for self-modifying code (SMC)
                         in the application. This option is enabled by default. 

    -smc_strict [0][1]   Enable (1) or disable (0) support for SMC inside basic blocks.  
                         By default (0), pin assumes that basic blocks do not modify their 
                         own code. 

Pin also supports the following tool switches. Tool switches should be placed after the tool name, but before the double dash ("--").

     -logfile                           Indicates the path and name of the log file.
                                        The default path is the current working directory.
                                        The default name is pintool.log.

     -unique_logfile                    Appends the pid to the log file name.

     -discard_line_info <module name>   Discard line information for specific module.
                                        Module name should be a short name without path,
                                        and not a symbolic link

     -discard_line_info_all             Discard line information for all modules.

     -help                              Print the help message.

     -short_name                        Use the shortest name for the RTN. Names with
                                        version substrings are preferred over the same
                                        name without the substring.

     -use_dynsym                        Include dynamic symbols when finding function names.

If you want to add your own command line options to your tool, please see KNOBS.


Generated on Mon Oct 6 20:13:17 2008 for Pin by  doxygen 1.4.6