diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2012-06-26 14:43:01 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2012-06-26 14:43:01 +0000 |
commit | 6fea9e186c3da74c8f0ba9d007522a7575d24a73 (patch) | |
tree | 062ddc7f6108c8f4f26e1f63110472d4abe86058 /gdb/configure.ac | |
parent | a4fd3de5d3170b2c22c9fe4cf236cc31305ef103 (diff) | |
download | gdb-6fea9e186c3da74c8f0ba9d007522a7575d24a73.zip gdb-6fea9e186c3da74c8f0ba9d007522a7575d24a73.tar.gz gdb-6fea9e186c3da74c8f0ba9d007522a7575d24a73.tar.bz2 |
Use PTRACE_PEEKUSER to get fs_base/gs_base
* amd64-linux-nat.c: Include <sys/user.h>.
(ps_get_thread_area): Use PTRACE_PEEKUSER to get fs_base/gs_base
if HAVE_STRUCT_USER_REGS_STRUCT_FS_BASE or
HAVE_STRUCT_USER_REGS_STRUCT_GS_BASE is defined.
* 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/configure.ac')
-rw-r--r-- | gdb/configure.ac | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gdb/configure.ac b/gdb/configure.ac index f77aa85..d52bd15 100644 --- a/gdb/configure.ac +++ b/gdb/configure.ac @@ -1274,6 +1274,12 @@ fi AC_CHECK_MEMBERS([struct reg.r_fs, struct reg.r_gs], [], [], [#include <machine/reg.h>]) +# 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>]) + # See if <sys/ptrace.h> provides the PTRACE_GETREGS request. AC_MSG_CHECKING(for PTRACE_GETREGS) AC_CACHE_VAL(gdb_cv_have_ptrace_getregs, |