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