Table of Contents

Origin

This software belongs to the ALLIANCE CAD system from the CAO-VLSI team at ASIM/LIP6/UPMC laboratory.
LIP6/ASIM
University P. et M. Curie 4, place Jussieu 75252 PARIS Cedex 05 FRANCE
Fax : {33/0} 1.44.27.62.86
E-mail support : alliance-support@asim.lip6.fr

Name

beh_debug - BEH structures displayer-debugger

Synopsys

void beh_debug (pnt, type)
void *pnt;
char *type;

Parameters

pnt
pointer of the structure to be displayed
type
name of the structure to be displayed. type can be any of befig", beout", bereg", bemsg", bepor", begen", berin", bebus", beaux", bebux", biabl", binode", beder", bequad", abl", integer", long", short", character", ptype", chain"

Description

When called, beh_debug() displaies the structure pointed by pnt then, prints the line:

COMMAND
>>

and waits for a command being entered by the user. If pnt is a NULL pointer or type doesn't represent a known structure, beh_debug() exits without making any action.

To display the structure, beh_debug() prints a line per field. Fields containing immediate value (integer, character, string, ...) are displayed in the following form:

name_of_the_field : value_of_the_field

Fields containing a pointer are marked by the symbol ->. If the field contains a NULL pointer, the field is displayed as:

-> name_of_the_field
:

In the other case, beh_debug() prints :

-> name_of_the_field
: available

Two kinds of command are accepted by the displayer.

A command can be the name of a field containing a pointer. The command is accepted only if the pointer is not a NULL pointer (field displayed as available"). When the debugger receives such a command, it first pushes the current structure on its stack then, displaies the structure pointed by the named field.

The second kind of commands are predefined commands :

_exit
to exit from the debugger
_up
to return to the previous structure
_stop
to put a stop mark on the current structure
_top
to return to the first structure (pointed by pnt)
_back
to return to the last structure marked with a stop mark
_save
to save the current structure in a static table. At most 10 structures may be saved. (example : _save 1 saves the current structure in the entry number ! of the table)
_jump
to jump to a saved structure (example : _jump 1" dislpaies the etructure save in the entry number 1 of the table).

_display displaies a field under a given format. (example : _display next integer displaies the field named next as an integer).

In addition to these commands, the command . (dot) can be used to repete the last command.

Example

#include <beh109.h>
struct beout *beout_pnt;

beh_debug (beout_pnt , beout");

Notes

beh_debug() uses an internal stack. The message stack overflow is printed if too many structures have been pushed on the stack.

See Also

beh(3)

Bug Report

This tool is under development at the ASIM/LIP6/UPMC laboratory, cao-vlsi research team.
We need your feedbak to improve documentation and tools. If you find bugs, please fill-in the form at http://asim.lip6.fr/alliance/support/bug-report/ Thanks for doing this.


Table of Contents

 



Alliance Web Site © 1997, 2002 ASIM/LIP6/UPMC, page maintained by Czo [Olivier Sirol] , last updated on 26 May 2000.