| # 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 |