mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-30 13:33:53 +08:00
Revert "gdbserver: convert have_ptrace_getregset to a tribool"
This reverts commit 5920765d75
.
This commit is contained in:
parent
9480801c1f
commit
56f703d39d
@ -1007,9 +1007,9 @@ arm_target::low_arch_setup ()
|
||||
|
||||
/* Check if PTRACE_GETREGSET works. */
|
||||
if (ptrace (PTRACE_GETREGSET, tid, NT_PRSTATUS, &iov) == 0)
|
||||
have_ptrace_getregset = TRIBOOL_TRUE;
|
||||
have_ptrace_getregset = 1;
|
||||
else
|
||||
have_ptrace_getregset = TRIBOOL_FALSE;
|
||||
have_ptrace_getregset = 0;
|
||||
}
|
||||
|
||||
bool
|
||||
@ -1122,7 +1122,7 @@ arm_target::get_regs_info ()
|
||||
{
|
||||
const struct target_desc *tdesc = current_process ()->tdesc;
|
||||
|
||||
if (have_ptrace_getregset == TRIBOOL_TRUE
|
||||
if (have_ptrace_getregset == 1
|
||||
&& (is_aarch32_linux_description (tdesc)
|
||||
|| arm_linux_get_tdesc_fp_type (tdesc) == ARM_FP_TYPE_VFPV3))
|
||||
return ®s_info_aarch32;
|
||||
|
@ -135,7 +135,7 @@ typedef struct
|
||||
#endif
|
||||
|
||||
/* Does the current host support PTRACE_GETREGSET? */
|
||||
enum tribool have_ptrace_getregset = TRIBOOL_UNKNOWN;
|
||||
int have_ptrace_getregset = -1;
|
||||
|
||||
/* Return TRUE if THREAD is the leader thread of the process. */
|
||||
|
||||
|
@ -951,7 +951,7 @@ void thread_db_notice_clone (struct thread_info *parent_thr, ptid_t child_ptid);
|
||||
|
||||
bool thread_db_thread_handle (ptid_t ptid, gdb_byte **handle, int *handle_len);
|
||||
|
||||
extern enum tribool have_ptrace_getregset;
|
||||
extern int have_ptrace_getregset;
|
||||
|
||||
/* Search for the value with type MATCH in the auxv vector, with entries of
|
||||
length WORDSIZE bytes, of process with pid PID. If found, store the
|
||||
|
@ -899,7 +899,7 @@ x86_linux_read_description (void)
|
||||
if (ptrace (PTRACE_GETFPXREGS, tid, 0, (long) &fpxregs) < 0)
|
||||
{
|
||||
have_ptrace_getfpxregs = 0;
|
||||
have_ptrace_getregset = TRIBOOL_FALSE;
|
||||
have_ptrace_getregset = 0;
|
||||
return i386_linux_read_description (X86_XSTATE_X87);
|
||||
}
|
||||
else
|
||||
@ -918,7 +918,7 @@ x86_linux_read_description (void)
|
||||
return tdesc_i386_linux_no_xml.get ();
|
||||
}
|
||||
|
||||
if (have_ptrace_getregset == TRIBOOL_UNKNOWN)
|
||||
if (have_ptrace_getregset == -1)
|
||||
{
|
||||
uint64_t xstateregs[(X86_XSTATE_SSE_SIZE / sizeof (uint64_t))];
|
||||
struct iovec iov;
|
||||
@ -929,10 +929,10 @@ x86_linux_read_description (void)
|
||||
/* Check if PTRACE_GETREGSET works. */
|
||||
if (ptrace (PTRACE_GETREGSET, tid,
|
||||
(unsigned int) NT_X86_XSTATE, (long) &iov) < 0)
|
||||
have_ptrace_getregset = TRIBOOL_FALSE;
|
||||
have_ptrace_getregset = 0;
|
||||
else
|
||||
{
|
||||
have_ptrace_getregset = TRIBOOL_TRUE;
|
||||
have_ptrace_getregset = 1;
|
||||
|
||||
/* Get XCR0 from XSAVE extended state. */
|
||||
xcr0 = xstateregs[(I386_LINUX_XSAVE_XCR0_OFFSET
|
||||
@ -955,7 +955,7 @@ x86_linux_read_description (void)
|
||||
}
|
||||
|
||||
/* Check the native XCR0 only if PTRACE_GETREGSET is available. */
|
||||
xcr0_features = (have_ptrace_getregset == TRIBOOL_TRUE
|
||||
xcr0_features = (have_ptrace_getregset
|
||||
&& (xcr0 & X86_XSTATE_ALL_MASK));
|
||||
|
||||
if (xcr0_features)
|
||||
|
Loading…
Reference in New Issue
Block a user