Fix documentation about rot agent expression bytecode
authorSimon Marchi <simon.marchi@ericsson.com>
Mon, 31 Jul 2017 09:22:21 +0000 (11:22 +0200)
committerSimon Marchi <simon.marchi@ericsson.com>
Mon, 31 Jul 2017 09:26:50 +0000 (11:26 +0200)
commit791fb3d7a58b86e5f30229625dfd33659f33fd6e
tree09af719651ef481436b871e46bce5cf5729dfce5
parent4bbd4ef219c5b4c7d437618ba8937af86dd1032e
Fix documentation about rot agent expression bytecode

The rot agent expression bytecode rotates the three items on the top of
the stack.  It is not clear which way the rotation is.  However, the
documentation currently shows this as the effect of the instructions:

   a b c => c b a

which doesn't make sense, since the value b doesn't move.  The two
valid possibilities I see are

  a b c => b c a
  a b c => c a b

depending on which way you rotate.

When looking at the gdbserver code, the top of the stack becomes the
third item, and the next-to-top item becomes the top.  So the second
form would be the right one, since in this notation the top of the stack
is the rightmost element:

  a b c => c a b

I adjusted the symbolic description and added a bit of text to make it
more obvious.

gdb/doc/ChangeLog:

* agentexpr.texi (rot): Fix symbolic description, improve
textual description.
gdb/doc/ChangeLog
gdb/doc/agentexpr.texi