aboutsummaryrefslogtreecommitdiff
path: root/gdb/doc
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@efficios.com>2023-09-08 11:20:58 -0400
committerSimon Marchi <simon.marchi@efficios.com>2023-09-08 13:14:41 -0400
commit15db2284f2f8259e46635ca6df3efc772d951fac (patch)
tree9942e0188fa23d186cca444c0520fbf3d6522bb9 /gdb/doc
parent3c83779e12feb56fd20a30eeafcf4b2bea571818 (diff)
downloadbinutils-15db2284f2f8259e46635ca6df3efc772d951fac.zip
binutils-15db2284f2f8259e46635ca6df3efc772d951fac.tar.gz
binutils-15db2284f2f8259e46635ca6df3efc772d951fac.tar.bz2
gdb/doc: describe x87 registers
While investigating this [1], I initially had no idea what register "fioff" stood for, making it difficult to map it to something in the Intel or AMD manuals. Similarly, I can imaging someone familiar with x87 to want to print the "x87 last instruction address", and have no clue that GDB makes it available as register "fioff". The names of the x87 state fields don't seem to be standardized, they even change between sections of the Intel manual (between the FSAVE, FXSAVE and XSAVE area descriptions). Add some details to the doc to help one map GDB register names to x87 state fields. [1] https://inbox.sourceware.org/gdb-patches/20230908022722.430741-1-simon.marchi@efficios.com/T/#u Change-Id: I0ea1eb648358e62da4aa87eea3515ee8a09f2762 Approved-By: Eli Zaretskii <eliz@gnu.org> Approved-By: Pedro Alves <pedro@palves.net>
Diffstat (limited to 'gdb/doc')
-rw-r--r--gdb/doc/gdb.texinfo19
1 files changed, 19 insertions, 0 deletions
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index 72083fc..9b7e06f 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -26310,6 +26310,25 @@ At this last step the value of bnd0 can be changed for investigation of bound
violations caused along the execution of the call. In order to know how to
set the bound registers or bound table for the call consult the ABI.
+@subsubsection x87 registers
+
+@value{GDBN} provides access to the x87 state through the following registers:
+
+@itemize
+
+@item @code{$st0} to @code{st7}: @code{ST(0)} to @code{ST(7)} floating-point
+registers
+@item @code{$fctrl}: control word register (@code{FCW})
+@item @code{$fstat}: status word register (@code{FSW})
+@item @code{$ftag}: tag word (@code{FTW})
+@item @code{$fiseg}: last instruction pointer segment
+@item @code{$fioff}: last instruction pointer
+@item @code{$foseg}: last data pointer segment
+@item @code{$fooff}: last data pointer
+@item @code{$fop}: last opcode
+
+@end itemize
+
@node Alpha
@subsection Alpha