This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
two agent expression nits (one line each)
- From: David Taylor <dtaylor at emc dot com>
- To: "gdb-patches at sourceware dot org" <gdb-patches at sourceware dot org>
- Date: Thu, 11 Sep 2014 13:54:10 -0400
- Subject: two agent expression nits (one line each)
- Authentication-results: sourceware.org; auth=none
In gdb/doc/agentexpr.texi you''ll find the text:
@item @code{setv} (0x2d) @var{n}: @result{} @var{v}
Set trace state variable number @var{n} to the value found on the top
of the stack. The stack is unchanged, so that the value is readily
available if the assignment is part of a larger expression. The
handling of @var{n} is as described for @code{getv}.
The @item line and the following text do no agree with one another. I'm
guessing that the text is correct, in which case this line:
@item @code{setv} (0x2d) @var{n}: @result{} @var{v}
should be changed to this:
@item @code{setv} (0x2d) @var{n}: @var{v} @result{} @var{v}
Additionally, in gdb/common/ax.def we find the line:
DEFOP (setv, 2, 0, 0, 1, 0x2d)
>From the comment earlier in the file:
Each line is of the form:
DEFOP (name, size, data_size, consumed, produced, opcode)
[...]
CONSUMED is the number of stack elements consumed.
PRODUCED is the number of stack elements produced.
which is saying that nothing is consumed and one item is produced. Both
should be 0 or both should be 1. Setting them both to 1 seems better
since if nothing is on the stack an error will occur. So, it should be
changed to:
DEFOP (setv, 2, 0, 1, 1, 0x2d)
David