-\input texinfo
+@c \input texinfo
@c %**start of header
-@setfilename agentexpr.info
-@settitle GDB Agent Expressions
-@setchapternewpage off
+@c @setfilename agentexpr.info
+@c @settitle GDB Agent Expressions
+@c @setchapternewpage off
@c %**end of header
-Revision: $Id$
+@c This file is part of the GDB manual.
+@c
+@c Copyright (C) 2003, 2004, 2005, 2006
+@c Free Software Foundation, Inc.
+@c
+@c See the file gdb.texinfo for copying conditions.
-@node The GDB Agent Expression Mechanism
-@chapter The GDB Agent Expression Mechanism
+@c Revision: $Id$
-In some applications, it is not feasable for the debugger to interrupt
+@node Agent Expressions
+@appendix The GDB Agent Expression Mechanism
+
+In some applications, it is not feasible for the debugger to interrupt
the program's execution long enough for the developer to learn anything
helpful about its behavior. If the program's correctness depends on its
real-time behavior, delays introduced by a debugger might cause the
In this example, @code{add} is the name of the bytecode, and
@code{(0x02)} is the one-byte value used to encode the bytecode, in
-hexidecimal. The phrase ``@var{a} @var{b} @result{} @var{a+b}'' shows
+hexadecimal. The phrase ``@var{a} @var{b} @result{} @var{a+b}'' shows
the stack before and after the bytecode executes. Beforehand, the stack
must contain at least two values, @var{a} and @var{b}; since the top of
the stack is to the right, @var{b} is on the top of the stack, and
and @var{b} be the top value. Shift @var{a} left by @var{b} bits, and
push the result.
-@item @code{rsh_signed} (0x0a): @var{a} @var{b} @result{} @var{@code{(signed)}a>>b}
+@item @code{rsh_signed} (0x0a): @var{a} @var{b} @result{} @code{(signed)}@var{a>>b}
Pop two integers from the stack; let @var{a} be the next-to-top value,
and @var{b} be the top value. Shift @var{a} right by @var{b} bits,
inserting copies of the top bit at the high end, and push the result.
The @var{offset} is stored as a sixteen-bit unsigned value, stored
immediately following the @code{if_goto} bytecode. It is always stored
-most signficant byte first, regardless of the target's normal
+most significant byte first, regardless of the target's normal
endianness. The offset is not guaranteed to fall at any particular
alignment within the bytecode stream; thus, on machines where fetching a
16-bit on an unaligned address raises an exception, you should fetch the
The register number @var{n} is encoded as a 16-bit unsigned integer
immediately following the @code{reg} bytecode. It is always stored most
-signficant byte first, regardless of the target's normal endianness.
+significant byte first, regardless of the target's normal endianness.
The register number is not guaranteed to fall at any particular
alignment within the bytecode stream; thus, on machines where fetching a
16-bit on an unaligned address raises an exception, you should fetch the
it.
@end table
-
-@bye