diff -r 1af5c1be89f8 -r 92d87f2e53c2 tools/elf4rom/libs/dwarf-20071209/dwarfdump/dwarfdump.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/elf4rom/libs/dwarf-20071209/dwarfdump/dwarfdump.1 Fri Jan 15 09:07:44 2010 +0000 @@ -0,0 +1,144 @@ +.TH DWARFDUMP +.SH NAME +dwarfdump \- dumps DWARF debug information of an ELF object +.SH SYNOPSIS +.B dwarfdump +[-abcdefilmoprsvy] [-t{afv}] [-u\f2objectfile\fP] \f2filename\fP +.SH DESCRIPTION +The +.B dwarfdump +command prints DWARF sections as requested by specific options. +With no options nothing prints! +.PP +The format is intended to be human readable. +If a script is to parse the output, the +.B \-d +option is useful. +.P +Not all sections actually exist in any given object file. +.P +The format may change from release to release, so it is +unwise to depend too heavily on the format. +.P +.PP +Frame information (.debug_frame and .eh_frame) is heavily +dependent on the ABI/ISA of the object file. +The '-R' option uses a built-in 'generic' register name set +handling up to 1000 registers named r0-r999. +The '-x abi=' +flavors below describe how to name an abi and use that to guide +the -f or -F processing. +Without '-R' or '-x abi='/ dwarfdump ignores +the dwarfdump.conf file and uses compiled-in MIPS/IRIX +conventions). +If no '-x name=' is given, dwarfdump +looks for "./dwarfdump.conf", "$HOME/.dwarfdump.conf", "/lib/dwarfdump.conf" and takes the first it finds. +If one or more '-x name=' is given the last of these is +used and all other such files ignored. +.PP +The +.B dwarfdump +command accepts one or more of the following options: +.RS +.TP +.B \-a +Dumps all sections. +Same as +.B \-bcfilmoprsy +.BR \-tfv . +.TP +.B \-b +Dumps the .debug_abbrev section. +.TP +.B \-c +Dumps the .debug_loc section. +.TP +.B \-d +Dense mode. Each die information of the .debug_info section is +printed in one-line format. This option does not imply \fB\-i\fP. +.TP +.B \-e +Ellipsis mode. Short names for DW_TAG_* and DW_ATTR_* are used +in the output for the .debug_info section. +.TP +.B \-f +Dumps the .debug_frame section. +.TP +.B \-i +Dumps the .debug_info section. +.TP +.B \-l +Dumps the .debug_line information. +.TP +.B \-m +Dumps the .debug_macinfo section. +.TP +.B \-o +Dumps the .reloc_debug_* sections. +.TP +.B \-p +Dumps the .debug_pubnames section. +.TP +.B \-r +Dumps the .debug_aranges section. +.TP +.B \-s +Dumps .debug_string section. +.TP +.B \-ta +Same as +.B \-tfv. +.TP +.B \-tf +Dumps the .debug_static_funcs section. +.TP +.B \-tv +Dumps the .debug_static_vars section. +.TP +.BI \-u ofile +Restricts the dumping of sections to the named +compilation unit. +.TP +.B \-v +Verbose mode. Shows more detailed information. +More detailed information about the .debug_frame section prints if +2 or 3 +.B \-v +options are given. +.TP +.B \-w +Dumps the .debug_weaknames section. +.TP +.B \-x abi= +where abi=names an abi in dwarfdump.conf (see the +abiname: command in dwarfdump.conf). +.TP +.B \-x name= +where name=names the full pathname of a dwarfdump configuration +file. Default install location is /usr/local/lib/dwarfdump.conf. +dwarfdump looks first for local ./dwarfdump.conf, then +for $HOME/.dwarfdump.conf then for /usr/local/lib/dwarfdump.conf. +The predefined abi names in dwarfdump.conf are +generic, ia64, m68k, x86, and x86_64. +.TP +.B \-y +Dumps the .debug_types section. +.SH FILES +dwarfdump +./dwarfdump.conf +$(HOME)/.dwarfdump.conf +/lib/dwarfdump.conf +.SH NOTES +In some cases compilers use DW_FORM_data1 (for example) +and in such cases the signedness of the value must be taken +from context. Rather than attempt to determine the +context, dwarfdump prints the value with both signednesses +whenever there is ambiguity about the correct interpretation. +For example, +"DW_AT_const_value 176(as signed = -80)". +For normal DWARF consumers that correctly and fully +evaluate all attributes there is no ambiguity of signedness: +the ambiguity for dwarfdump is due to dwarfdump evaluating +DIEs in a simple order and not keeping track of much context. +.SH BUGS +Support for DWARF3 is being completed but may not be complete.