aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
Diffstat (limited to 'gdb')
-rw-r--r--gdb/amd64-linux-tdep.c1
-rw-r--r--gdb/i386-linux-tdep.c1
-rw-r--r--gdb/i386-linux-tdep.h20
-rw-r--r--gdb/nat/x86-linux.h20
4 files changed, 20 insertions, 22 deletions
diff --git a/gdb/amd64-linux-tdep.c b/gdb/amd64-linux-tdep.c
index a512ec5..1deb13b 100644
--- a/gdb/amd64-linux-tdep.c
+++ b/gdb/amd64-linux-tdep.c
@@ -42,7 +42,6 @@
#include "arch/amd64.h"
#include "target-descriptions.h"
#include "expop.h"
-#include "nat/x86-linux.h"
/* The syscall's XML filename for i386. */
#define XML_SYSCALL_FILENAME_AMD64 "syscalls/amd64-linux.xml"
diff --git a/gdb/i386-linux-tdep.c b/gdb/i386-linux-tdep.c
index 8dd7203..a2f9376 100644
--- a/gdb/i386-linux-tdep.c
+++ b/gdb/i386-linux-tdep.c
@@ -40,7 +40,6 @@
#include "i387-tdep.h"
#include "gdbsupport/x86-xstate.h"
-#include "nat/x86-linux.h"
/* The syscall's XML filename for i386. */
#define XML_SYSCALL_FILENAME_I386 "syscalls/i386-linux.xml"
diff --git a/gdb/i386-linux-tdep.h b/gdb/i386-linux-tdep.h
index 07593c6..5891747 100644
--- a/gdb/i386-linux-tdep.h
+++ b/gdb/i386-linux-tdep.h
@@ -58,6 +58,26 @@ extern void i386_linux_report_signal_info (struct gdbarch *gdbarch,
/* Return the target description according to XCR0. */
extern const struct target_desc *i386_linux_read_description (uint64_t xcr0);
+/* Format of XSAVE extended state is:
+ struct
+ {
+ fxsave_bytes[0..463]
+ sw_usable_bytes[464..511]
+ xstate_hdr_bytes[512..575]
+ extended state regions (AVX, MPX, AVX512, PKRU, etc.)
+ };
+
+ Same memory layout will be used for the coredump NT_X86_XSTATE
+ representing the XSAVE extended state registers.
+
+ The first 8 bytes of the sw_usable_bytes[464..467] is the OS enabled
+ extended state mask, which is the same as the extended control register
+ 0 (the XFEATURE_ENABLED_MASK register), XCR0. We can use this mask
+ together with the mask saved in the xstate_hdr_bytes to determine what
+ states the processor/OS supports and what state, used or initialized,
+ the process/thread is in. */
+#define I386_LINUX_XSAVE_XCR0_OFFSET 464
+
extern int i386_linux_gregset_reg_offset[];
/* Return x86 siginfo type. */
diff --git a/gdb/nat/x86-linux.h b/gdb/nat/x86-linux.h
index 855a8d1..15153ea 100644
--- a/gdb/nat/x86-linux.h
+++ b/gdb/nat/x86-linux.h
@@ -22,26 +22,6 @@
#include "nat/linux-nat.h"
-/* Format of XSAVE extended state is:
- struct
- {
- fxsave_bytes[0..463]
- sw_usable_bytes[464..511]
- xstate_hdr_bytes[512..575]
- extended state regions (AVX, MPX, AVX512, PKRU, etc.)
- };
-
- Same memory layout will be used for the coredump NT_X86_XSTATE
- representing the XSAVE extended state registers.
-
- The first 8 bytes of the sw_usable_bytes[464..467] is the OS enabled
- extended state mask, which is the same as the extended control register
- 0 (the XFEATURE_ENABLED_MASK register), XCR0. We can use this mask
- together with the mask saved in the xstate_hdr_bytes to determine what
- states the processor/OS supports and what state, used or initialized,
- the process/thread is in. */
-#define I386_LINUX_XSAVE_XCR0_OFFSET 464
-
/* Set whether our local mirror of LWP's debug registers has been
changed since the values were last written to the thread. Nonzero
indicates that a change has been made, zero indicates no change. */