gdb remote protocol breakpoints (Z0 command)

David Taylor <[email protected]>
Newsgroups gmane.comp.gdb.devel
Message-ID <20417.1403189074@usendtaylorx2l>
In the manual the Z0 (insert memory breakpoint) command is summarized
thusly:

    Z0,addr,kind[;cond_list...][;cmds:persist,cmd_list...]

Now, cond_list 'is comprised of a series of expressions, concatenated
without separators.  Each expression has the following form:

    X len,expr

len is the length of the bytecode expression and expr is the actual
conditional expression in bytecode form.

That part is fine.  Most of the time when I want a conditional
breakpoint, the expression is expressible in bytecode form.  (In fact,
while I won't attest that they've always been so expressible, I don't
recall any that weren't so expressible).

But, it then goes on to describe cmd_list in similar terms.

There are many things you might want to do at a breakpoint that lack
bytecode operators.  Just for starters,

    . there is no bytecode operator for setting memory

    . there is no bytecode operator for setting registers

    . there is no bytecode operator for calling arbitrary functions

    . there is no 'continue' option (as in: ``after performing the
    requested commands, continue the current thread'')

There are other capabilities that I would like as well, but without the
four mentioned above, I don't consider it very useful at all.

Has anyone else thought about these issuses and possibly sketched out
extensions to allow such capabilities?

[The 'continue' command would likely be an extension to the Z0 command,
the others would likely be extensions to the bytecode language.]

If we (EMC) were to do something in our gdb and/or remote stub, I would
want it to be compatible with what others are doing / thinking of doing.

Thanks.

David
--
David Taylor
dtaylor at emc dot com
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.