^done,BreakpointTable=nr_rows="1",nr_cols="6",hdr=[width="3",alignment="-1",

col_name="number",colhdr="Num",width="14",alignment="-1",col_name="type",colhdr="Type", width="4",alignment="-1",col_name="disp",colhdr="Disp",width="3",alignment="-1", col_name="enabled",colhdr="Enb",width="10",alignment="-1",col_name="addr", colhdr="Address",width="40",alignment="2",col_name="what",colhdr="What"], body=[bkpt=number="1",type="breakpoint",disp="keep",enabled="y",addr="0x000029b4", func="call",file="hello.c",line="9",times="1"]

(gdb)

21.6 GDB/MI Data manipulation

This section describes the GDB/MI commands that manipulate data: examine memory and registers, evaluate expressions, and so on.

The -data-disassemble command

Synopsis

-data-disassemble

[ -sstart-addr -eend-addr ]

[ -ffilename -llinenum [ -nlines ] ]

--mode

Where:

'start-addr''end-addr' 'filename' 'linenum' 'lines'

'mode'

is the beginning address (or $pc)

is the end address

is the name of the file to disassemble

is the line number to disassemble around

is the number of disassembly lines to be produced. If it is -1, the whole function will be disassembled, in case no end-addris specified. If end-addris specified as a non-zero value, and lines is lower than the number of disassembly lines between start-addrand end-addr, only lines lines are displayed; if lines is higher than the number of lines between start-addrand end-addr, only the lines up to end-addrare displayed.

is either 0 (meaning only disassembly) or 1 (meaning mixed source and disassembly).

Result

The output for each instruction is composed of four fields:

Address

Func-name

Offset

Instruction

Note that whatever included in the instruction field, is not manipulated directly by GDB/MI, that is it is not possible to adjust its format.

320 The GDB/MI Interface

Page 320
Image 320
HP gnu source-level debugger 5992-4701 manual 21.6 GDB/MI Data manipulation, data-disassemble command