i386 Features (Debugging with GDB)
Next: MicroBlaze Features, Previous: ARM Features, Up: Standard Target Features [Contents][Index]
G.5.4 i386 Features
The ‘org.gnu.gdb.i386.core’ feature is required for i386/amd64 targets. It should describe the following registers:
- - ‘
eax’ through ‘edi’ plus ‘eip’ for i386 - - ‘
rax’ through ‘r15’ plus ‘rip’ for amd64 - - ‘
eflags’, ‘cs’, ‘ss’, ‘ds’, ‘es’, ‘fs’, ‘gs’ - - ‘
st0’ through ‘st7’ - - ‘
fctrl’, ‘fstat’, ‘ftag’, ‘fiseg’, ‘fioff’, ‘foseg’, ‘fooff’ and ‘fop’
The register sets may be different, depending on the target.
The ‘org.gnu.gdb.i386.sse’ feature is optional. It should describe registers:
- - ‘
xmm0’ through ‘xmm7’ for i386 - - ‘
xmm0’ through ‘xmm15’ for amd64 - - ‘
mxcsr’
The ‘org.gnu.gdb.i386.avx’ feature is optional and requires the ‘org.gnu.gdb.i386.sse’ feature. It should describe the upper 128 bits of YMM registers:
- - ‘
ymm0h’ through ‘ymm7h’ for i386 - - ‘
ymm0h’ through ‘ymm15h’ for amd64
The ‘org.gnu.gdb.i386.mpx’ is an optional feature representing Intel Memory Protection Extension (MPX). It should describe the following registers:
- - ‘
bnd0raw’ through ‘bnd3raw’ for i386 and amd64. - - ‘
bndcfgu’ and ‘bndstatus’ for i386 and amd64.
The ‘org.gnu.gdb.i386.linux’ feature is optional. It should describe a single register, ‘orig_eax’.
The ‘org.gnu.gdb.i386.segments’ feature is optional. It should describe two system registers: ‘fs_base’ and ‘gs_base’.
The ‘org.gnu.gdb.i386.avx512’ feature is optional and requires the ‘org.gnu.gdb.i386.avx’ feature. It should describe additional XMM registers:
- - ‘
xmm16h’ through ‘xmm31h’, only valid for amd64.
It should describe the upper 128 bits of additional YMM registers:
- - ‘
ymm16h’ through ‘ymm31h’, only valid for amd64.
It should describe the upper 256 bits of ZMM registers:
- - ‘
zmm0h’ through ‘zmm7h’ for i386. - - ‘
zmm0h’ through ‘zmm15h’ for amd64.
It should describe the additional ZMM registers:
- - ‘
zmm16h’ through ‘zmm31h’, only valid for amd64.
The ‘org.gnu.gdb.i386.pkeys’ feature is optional. It should describe a single register, ‘pkru’. It is a 32-bit register valid for i386 and amd64.
Next: MicroBlaze Features, Previous: ARM Features, Up: Standard Target Features [Contents][Index]