tools/elf4rom/libs/dwarf-20071209/dwarfdump/dwarfdump.1
changeset 34 92d87f2e53c2
equal deleted inserted replaced
33:1af5c1be89f8 34:92d87f2e53c2
       
     1 .TH DWARFDUMP
       
     2 .SH NAME
       
     3 dwarfdump \- dumps DWARF debug information of an ELF object
       
     4 .SH SYNOPSIS
       
     5 .B dwarfdump
       
     6 [-abcdefilmoprsvy] [-t{afv}] [-u\f2objectfile\fP] \f2filename\fP
       
     7 .SH DESCRIPTION
       
     8 The 
       
     9 .B dwarfdump
       
    10 command prints DWARF sections as requested by specific options.
       
    11 With no options nothing prints!
       
    12 .PP
       
    13 The format is intended to be human readable.
       
    14 If a script is to parse the output, the
       
    15 .B \-d
       
    16 option is useful.
       
    17 .P
       
    18 Not all sections actually exist in any given object file.
       
    19 .P
       
    20 The format may change from release to release, so it is
       
    21 unwise to depend too heavily on the format.
       
    22 .P
       
    23 .PP
       
    24 Frame information (.debug_frame and .eh_frame) is heavily
       
    25 dependent on the ABI/ISA of the object file.  
       
    26 The '-R' option uses a built-in 'generic' register name set
       
    27 handling up to 1000 registers named r0-r999.
       
    28 The '-x abi=<abi>'
       
    29 flavors below describe how to name an abi and use that to guide
       
    30 the -f or -F processing.
       
    31 Without '-R' or '-x abi=<abi>'/ dwarfdump ignores
       
    32 the dwarfdump.conf file and uses compiled-in MIPS/IRIX 
       
    33 conventions).  
       
    34 If no '-x name=<path>' is given, dwarfdump
       
    35 looks for "./dwarfdump.conf", "$HOME/.dwarfdump.conf", "<install-prefix>/lib/dwarfdump.conf" and takes the first it finds.
       
    36 If one or more '-x name=<path>' is given the last of these is
       
    37 used and all other such files ignored.
       
    38 .PP
       
    39 The 
       
    40 .B dwarfdump
       
    41 command accepts one or more of the following options:
       
    42 .RS
       
    43 .TP
       
    44 .B \-a
       
    45 Dumps all sections.
       
    46 Same as 
       
    47 .B \-bcfilmoprsy
       
    48 .BR \-tfv .
       
    49 .TP
       
    50 .B \-b
       
    51 Dumps the .debug_abbrev section.  
       
    52 .TP
       
    53 .B \-c
       
    54 Dumps the .debug_loc section.
       
    55 .TP
       
    56 .B \-d
       
    57 Dense mode.  Each die information of the .debug_info section is 
       
    58 printed in one-line format.  This option does not imply \fB\-i\fP.  
       
    59 .TP
       
    60 .B \-e
       
    61 Ellipsis mode.  Short names for DW_TAG_* and DW_ATTR_* are used 
       
    62 in the output for the .debug_info section.  
       
    63 .TP
       
    64 .B \-f
       
    65 Dumps the .debug_frame section.
       
    66 .TP
       
    67 .B \-i
       
    68 Dumps the .debug_info section.
       
    69 .TP
       
    70 .B \-l
       
    71 Dumps the .debug_line information.  
       
    72 .TP
       
    73 .B \-m
       
    74 Dumps the .debug_macinfo section.
       
    75 .TP
       
    76 .B \-o
       
    77 Dumps the .reloc_debug_* sections.
       
    78 .TP
       
    79 .B \-p
       
    80 Dumps the .debug_pubnames section.
       
    81 .TP
       
    82 .B \-r
       
    83 Dumps the .debug_aranges section.
       
    84 .TP
       
    85 .B \-s
       
    86 Dumps .debug_string section.
       
    87 .TP
       
    88 .B \-ta
       
    89 Same as 
       
    90 .B \-tfv.
       
    91 .TP
       
    92 .B \-tf
       
    93 Dumps the .debug_static_funcs section.
       
    94 .TP
       
    95 .B \-tv
       
    96 Dumps the .debug_static_vars section.
       
    97 .TP
       
    98 .BI \-u ofile
       
    99 Restricts the dumping of sections to the named
       
   100 compilation unit.
       
   101 .TP
       
   102 .B \-v
       
   103 Verbose mode.  Shows more detailed information.  
       
   104 More detailed information about the .debug_frame section prints if
       
   105 2 or 3 
       
   106 .B \-v
       
   107 options are given.
       
   108 .TP
       
   109 .B \-w
       
   110 Dumps the .debug_weaknames section.
       
   111 .TP
       
   112 .B \-x abi=<conf>
       
   113 where abi=names an abi in dwarfdump.conf (see the
       
   114 abiname: command in dwarfdump.conf).
       
   115 .TP
       
   116 .B \-x name=<conf>
       
   117 where name=names the full pathname of a dwarfdump configuration
       
   118 file.  Default install location is /usr/local/lib/dwarfdump.conf.
       
   119 dwarfdump looks first for local ./dwarfdump.conf, then
       
   120 for $HOME/.dwarfdump.conf then  for  /usr/local/lib/dwarfdump.conf.
       
   121 The predefined abi names in dwarfdump.conf are
       
   122 generic, ia64,  m68k, x86, and x86_64.
       
   123 .TP
       
   124 .B \-y
       
   125 Dumps the .debug_types section.
       
   126 .SH FILES
       
   127 dwarfdump
       
   128 ./dwarfdump.conf
       
   129 $(HOME)/.dwarfdump.conf
       
   130 <install-prefix>/lib/dwarfdump.conf
       
   131 .SH NOTES
       
   132 In some cases compilers use DW_FORM_data1 (for example)
       
   133 and in such cases the signedness of the value must be taken
       
   134 from context. Rather than attempt to determine the
       
   135 context, dwarfdump prints the value with both signednesses
       
   136 whenever there is ambiguity about the correct interpretation.
       
   137 For example, 
       
   138 "DW_AT_const_value           176(as signed = -80)".
       
   139 For normal DWARF consumers that correctly and fully
       
   140 evaluate all attributes there is no ambiguity of signedness:
       
   141 the ambiguity for dwarfdump is due to dwarfdump evaluating
       
   142 DIEs in a simple order and not keeping track of much context.
       
   143 .SH BUGS
       
   144 Support for DWARF3 is being completed but may not be complete.