summaryrefslogtreecommitdiff
path: root/gdb/gdbserver/configure.ac
diff options
context:
space:
mode:
authorWalfred Tedeschi <walfred.tedeschi@intel.com>2017-01-27 15:19:12 +0100
committerWalfred Tedeschi <walfred.tedeschi@intel.com>2017-01-27 15:20:11 +0100
commit239b6d10954b18ce089e9c3a667e7f2df3655476 (patch)
tree263663d502f0fc622f11b9cc62bc03d6d748f97a /gdb/gdbserver/configure.ac
parent387dd77738619d7e898f063bbeb1b8b6faf6cad5 (diff)
gdbserver-amd64: add HAVE_STRUCT_USER_REGS_STRUCT_(GS|FS)_BASE for gdbserver.
The macros mentioned in the title were set only for GDB. In gdbserver they were not set until now. To align the code in GDB and gdbserver these macros are also added into gdbserver, enabling read and write of gs_base and fs_base registers from the system in new and old kernels. 2017-01-27 Walfred Tedeschi <walfred.tedeschi@intel.com> gdb/gdbserver/ChangeLog: * configure.ac: Check if the fs_base and gs_base members of `struct user_regs_struct' exist. * config.in: Regenerated. * configure: Likewise.
Diffstat (limited to 'gdb/gdbserver/configure.ac')
-rw-r--r--gdb/gdbserver/configure.ac7
1 files changed, 7 insertions, 0 deletions
diff --git a/gdb/gdbserver/configure.ac b/gdb/gdbserver/configure.ac
index d013c219cc..4ea7913c98 100644
--- a/gdb/gdbserver/configure.ac
+++ b/gdb/gdbserver/configure.ac
@@ -163,6 +163,13 @@ AC_CHECK_DECLS([strerror, perror, vasprintf, vsnprintf])
AC_CHECK_MEMBERS([struct stat.st_blocks, struct stat.st_blksize])
+# See if <sys/user.h> supports the %fs_base and %gs_bas amd64 segment registers.
+# Older amd64 Linux's don't have the fs_base and gs_base members of
+# `struct user_regs_struct'.
+AC_CHECK_MEMBERS([struct user_regs_struct.fs_base, struct user_regs_struct.gs_base],
+ [], [], [#include <sys/user.h>])
+
+
AC_CHECK_TYPES(socklen_t, [], [],
[#include <sys/types.h>
#include <sys/socket.h>