36 lines
1.1 KiB
Plaintext
36 lines
1.1 KiB
Plaintext
|
# Examples of using gdb's command language to print out various gdb data
|
||
|
# structures.
|
||
|
|
||
|
define list-objfiles
|
||
|
set $obj = object_files
|
||
|
printf "objfile bfd msyms name\n"
|
||
|
while $obj != 0
|
||
|
printf "0x%-8x 0x%-8x %6d %s\n", $obj, $obj->obfd, \
|
||
|
$obj->minimal_symbol_count, $obj->name
|
||
|
set var $obj = $obj->next
|
||
|
end
|
||
|
end
|
||
|
document list-objfiles
|
||
|
Print a table of the current objfiles.
|
||
|
end
|
||
|
|
||
|
define print-values
|
||
|
printf "Location Offset Size Lazy Contents0-3 Lval\n"
|
||
|
set $val = $arg0
|
||
|
while $val != 0
|
||
|
printf "%8x %6d %10d %4d %12x ", $val->location.address, \
|
||
|
$val->offset, \
|
||
|
$val->type->length, $val->lazy, $val->aligner.contents[0]
|
||
|
output $val->lval
|
||
|
printf "\n"
|
||
|
set $val = $val->next
|
||
|
end
|
||
|
end
|
||
|
document print-values
|
||
|
Print a list of values.
|
||
|
Takes one argument, the value to print, and prints all the values which
|
||
|
are chained through the next field. Thus the most recently created values
|
||
|
will be listed first. The "Contents0-3" field gives the first "int"
|
||
|
of the VALUE_CONTENTS; not the entire contents.
|
||
|
end
|