* mips-linux-nat.c: Include "gdb_proc_service.h".
(PTRACE_GET_THREAD_AREA): Define. (ps_get_thread_area): New. * Makefile.in (mips-linux-nat.o): Update.
This commit is contained in:
parent
7123df0e80
commit
dc60ece87d
@ -1,3 +1,10 @@
|
|||||||
|
2006-03-15 Daniel Jacobowitz <dan@codesourcery.com>
|
||||||
|
|
||||||
|
* mips-linux-nat.c: Include "gdb_proc_service.h".
|
||||||
|
(PTRACE_GET_THREAD_AREA): Define.
|
||||||
|
(ps_get_thread_area): New.
|
||||||
|
* Makefile.in (mips-linux-nat.o): Update.
|
||||||
|
|
||||||
2006-03-13 Jim Blandy <jimb@codesourcery.com>
|
2006-03-13 Jim Blandy <jimb@codesourcery.com>
|
||||||
|
|
||||||
* MAINTAINERS: Use my work address.
|
* MAINTAINERS: Use my work address.
|
||||||
|
@ -2295,7 +2295,7 @@ mips64obsd-tdep.o: mips64obsd-tdep.c $(defs_h) $(osabi_h) $(regcache_h) \
|
|||||||
$(gdb_string_h) $(mips_tdep_h) $(solib_svr4_h)
|
$(gdb_string_h) $(mips_tdep_h) $(solib_svr4_h)
|
||||||
mips-irix-tdep.o: mips-irix-tdep.c $(defs_h) $(osabi_h) $(elf_bfd_h)
|
mips-irix-tdep.o: mips-irix-tdep.c $(defs_h) $(osabi_h) $(elf_bfd_h)
|
||||||
mips-linux-nat.o: mips-linux-nat.c $(defs_h) $(mips_tdep_h) $(target_h) \
|
mips-linux-nat.o: mips-linux-nat.c $(defs_h) $(mips_tdep_h) $(target_h) \
|
||||||
$(linux_nat_h)
|
$(linux_nat_h) $(gdb_proc_service_h)
|
||||||
mips-linux-tdep.o: mips-linux-tdep.c $(defs_h) $(gdbcore_h) $(target_h) \
|
mips-linux-tdep.o: mips-linux-tdep.c $(defs_h) $(gdbcore_h) $(target_h) \
|
||||||
$(solib_svr4_h) $(osabi_h) $(mips_tdep_h) $(gdb_string_h) \
|
$(solib_svr4_h) $(osabi_h) $(mips_tdep_h) $(gdb_string_h) \
|
||||||
$(gdb_assert_h) $(frame_h) $(regcache_h) $(trad_frame_h) \
|
$(gdb_assert_h) $(frame_h) $(regcache_h) $(trad_frame_h) \
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
/* Native-dependent code for GNU/Linux on MIPS processors.
|
/* Native-dependent code for GNU/Linux on MIPS processors.
|
||||||
|
|
||||||
Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
|
Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006
|
||||||
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GDB.
|
This file is part of GDB.
|
||||||
|
|
||||||
@ -24,6 +25,12 @@
|
|||||||
#include "target.h"
|
#include "target.h"
|
||||||
#include "linux-nat.h"
|
#include "linux-nat.h"
|
||||||
|
|
||||||
|
#include "gdb_proc_service.h"
|
||||||
|
|
||||||
|
#ifndef PTRACE_GET_THREAD_AREA
|
||||||
|
#define PTRACE_GET_THREAD_AREA 25
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Pseudo registers can not be read. ptrace does not provide a way to
|
/* Pseudo registers can not be read. ptrace does not provide a way to
|
||||||
read (or set) MIPS_PS_REGNUM, and there's no point in reading or
|
read (or set) MIPS_PS_REGNUM, and there's no point in reading or
|
||||||
setting MIPS_ZERO_REGNUM. We also can not set BADVADDR, CAUSE, or
|
setting MIPS_ZERO_REGNUM. We also can not set BADVADDR, CAUSE, or
|
||||||
@ -65,6 +72,23 @@ mips_linux_cannot_store_register (int regno)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Fetch the thread-local storage pointer for libthread_db. */
|
||||||
|
|
||||||
|
ps_err_e
|
||||||
|
ps_get_thread_area (const struct ps_prochandle *ph,
|
||||||
|
lwpid_t lwpid, int idx, void **base)
|
||||||
|
{
|
||||||
|
if (ptrace (PTRACE_GET_THREAD_AREA, lwpid, NULL, base) != 0)
|
||||||
|
return PS_ERR;
|
||||||
|
|
||||||
|
/* IDX is the bias from the thread pointer to the beginning of the
|
||||||
|
thread descriptor. It has to be subtracted due to implementation
|
||||||
|
quirks in libthread_db. */
|
||||||
|
*base = (void *) ((char *)*base - idx);
|
||||||
|
|
||||||
|
return PS_OK;
|
||||||
|
}
|
||||||
|
|
||||||
void _initialize_mips_linux_nat (void);
|
void _initialize_mips_linux_nat (void);
|
||||||
|
|
||||||
void
|
void
|
||||||
|
Loading…
Reference in New Issue
Block a user