* corelow.c (core_pid_to_str): Default to using normal_pid_to_str
instead of printing "Thread" here. * linux-tdep.c: Include inferior.h. (linux_core_pid_to_str): New. (linux_init_abi): New. * linux-tdep.h (linux_init_abi): Declare. * alpha-linux-tdep.c: Include linux-tdep.h. (alpha_linux_init_abi): Call linux_init_abi. * amd64-linux-tdep.c (amd64_linux_init_abi): Call linux_init_abi. * arm-linux-tdep.c (arm_linux_init_abi): Call linux_init_abi. * frv-linux-tdep.c: Include linux-tdep.h (frv_linux_init_abi): Call linux_init_abi. * hppa-linux-tdep.c: Include linux-tdep.h (hppa_linux_init_abi): Call linux_init_abi. * i386-linux-tdep.c (i386_linux_init_abi): Call linux_init_abi. * ia64-linux-tdep.c: Include linux-tdep.h. (ia64_linux_init_abi): Call linux_init_abi. * m32r-linux-tdep.c: Include linux-tdep.h. (m32r_linux_init_abi): Call linux_init_abi. * m68klinux-tdep.c: Include linux-tdep.h. (m68k_linux_init_abi): Call linux_init_abi. * microblaze-linux-tdep.c: Include linux-tdep.h. (microblaze_linux_init_abi): Call linux_init_abi. * mips-linux-tdep.c: Include linux-tdep.h. (mips_linux_init_abi): Call linux_init_abi. * mn10300-linux-tdep.c: Include linux-tdep.h. (am33_linux_init_osabi): Call linux_init_abi. Rename the 'gdbinfo' parameter to 'info'. * ppc-linux-tdep.c: Include linux-tdep.h. (ppc_linux_init_abi): Call linux_init_abi. * sh-linux-tdep.c: Include linux-tdep.h. (sh_linux_init_abi): Call linux_init_abi. * sparc-linux-tdep.c: Include linux-tdep.h. (sparc32_linux_init_abi): Call linux_init_abi. * sparc64-linux-tdep.c: Include linux-tdep.h. (sparc64_linux_init_abi): Call linux_init_abi. * xtensa-linux-tdep.c: Include linux-tdep.h. (xtensa_linux_init_abi): Call linux_init_abi. * i386-cygwin-tdep.c (i386_windows_core_pid_to_str): New. (i386_cygwin_init_abi): Install it as gdbarch_core_pid_to_str callback.
This commit is contained in:
parent
1bed7b84a2
commit
a5ee0f0c4d
22 changed files with 158 additions and 14 deletions
|
@ -1,3 +1,47 @@
|
||||||
|
2010-08-04 Pedro Alves <pedro@codesourcery.com>
|
||||||
|
|
||||||
|
* corelow.c (core_pid_to_str): Default to using normal_pid_to_str
|
||||||
|
instead of printing "Thread" here.
|
||||||
|
* linux-tdep.c: Include inferior.h.
|
||||||
|
(linux_core_pid_to_str): New.
|
||||||
|
(linux_init_abi): New.
|
||||||
|
* linux-tdep.h (linux_init_abi): Declare.
|
||||||
|
* alpha-linux-tdep.c: Include linux-tdep.h.
|
||||||
|
(alpha_linux_init_abi): Call linux_init_abi.
|
||||||
|
* amd64-linux-tdep.c (amd64_linux_init_abi): Call linux_init_abi.
|
||||||
|
* arm-linux-tdep.c (arm_linux_init_abi): Call linux_init_abi.
|
||||||
|
* frv-linux-tdep.c: Include linux-tdep.h
|
||||||
|
(frv_linux_init_abi): Call linux_init_abi.
|
||||||
|
* hppa-linux-tdep.c: Include linux-tdep.h
|
||||||
|
(hppa_linux_init_abi): Call linux_init_abi.
|
||||||
|
* i386-linux-tdep.c (i386_linux_init_abi): Call linux_init_abi.
|
||||||
|
* ia64-linux-tdep.c: Include linux-tdep.h.
|
||||||
|
(ia64_linux_init_abi): Call linux_init_abi.
|
||||||
|
* m32r-linux-tdep.c: Include linux-tdep.h.
|
||||||
|
(m32r_linux_init_abi): Call linux_init_abi.
|
||||||
|
* m68klinux-tdep.c: Include linux-tdep.h.
|
||||||
|
(m68k_linux_init_abi): Call linux_init_abi.
|
||||||
|
* microblaze-linux-tdep.c: Include linux-tdep.h.
|
||||||
|
(microblaze_linux_init_abi): Call linux_init_abi.
|
||||||
|
* mips-linux-tdep.c: Include linux-tdep.h.
|
||||||
|
(mips_linux_init_abi): Call linux_init_abi.
|
||||||
|
* mn10300-linux-tdep.c: Include linux-tdep.h.
|
||||||
|
(am33_linux_init_osabi): Call linux_init_abi. Rename the
|
||||||
|
'gdbinfo' parameter to 'info'.
|
||||||
|
* ppc-linux-tdep.c: Include linux-tdep.h.
|
||||||
|
(ppc_linux_init_abi): Call linux_init_abi.
|
||||||
|
* sh-linux-tdep.c: Include linux-tdep.h.
|
||||||
|
(sh_linux_init_abi): Call linux_init_abi.
|
||||||
|
* sparc-linux-tdep.c: Include linux-tdep.h.
|
||||||
|
(sparc32_linux_init_abi): Call linux_init_abi.
|
||||||
|
* sparc64-linux-tdep.c: Include linux-tdep.h.
|
||||||
|
(sparc64_linux_init_abi): Call linux_init_abi.
|
||||||
|
* xtensa-linux-tdep.c: Include linux-tdep.h.
|
||||||
|
(xtensa_linux_init_abi): Call linux_init_abi.
|
||||||
|
* i386-cygwin-tdep.c (i386_windows_core_pid_to_str): New.
|
||||||
|
(i386_cygwin_init_abi): Install it as gdbarch_core_pid_to_str
|
||||||
|
callback.
|
||||||
|
|
||||||
2010-08-03 Doug Evans <dje@google.com>
|
2010-08-03 Doug Evans <dje@google.com>
|
||||||
|
|
||||||
* breakpoint.c (bpdisp_text): Constify bpdisps.
|
* breakpoint.c (bpdisp_text): Constify bpdisps.
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
#include "symtab.h"
|
#include "symtab.h"
|
||||||
#include "regset.h"
|
#include "regset.h"
|
||||||
#include "regcache.h"
|
#include "regcache.h"
|
||||||
|
#include "linux-tdep.h"
|
||||||
#include "alpha-tdep.h"
|
#include "alpha-tdep.h"
|
||||||
|
|
||||||
/* Under GNU/Linux, signal handler invocations can be identified by
|
/* Under GNU/Linux, signal handler invocations can be identified by
|
||||||
|
@ -212,6 +212,8 @@ alpha_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
{
|
{
|
||||||
struct gdbarch_tdep *tdep;
|
struct gdbarch_tdep *tdep;
|
||||||
|
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
/* Hook into the DWARF CFI frame unwinder. */
|
/* Hook into the DWARF CFI frame unwinder. */
|
||||||
alpha_dwarf2_init_abi (info, gdbarch);
|
alpha_dwarf2_init_abi (info, gdbarch);
|
||||||
|
|
||||||
|
|
|
@ -1291,6 +1291,8 @@ amd64_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
|
|
||||||
gdb_assert (tdesc_data);
|
gdb_assert (tdesc_data);
|
||||||
|
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
tdep->gregset_reg_offset = amd64_linux_gregset_reg_offset;
|
tdep->gregset_reg_offset = amd64_linux_gregset_reg_offset;
|
||||||
tdep->gregset_num_regs = ARRAY_SIZE (amd64_linux_gregset_reg_offset);
|
tdep->gregset_num_regs = ARRAY_SIZE (amd64_linux_gregset_reg_offset);
|
||||||
tdep->sizeof_gregset = 27 * 8;
|
tdep->sizeof_gregset = 27 * 8;
|
||||||
|
|
|
@ -862,6 +862,8 @@ arm_linux_init_abi (struct gdbarch_info info,
|
||||||
{
|
{
|
||||||
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
||||||
|
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
tdep->lowest_pc = 0x8000;
|
tdep->lowest_pc = 0x8000;
|
||||||
if (info.byte_order == BFD_ENDIAN_BIG)
|
if (info.byte_order == BFD_ENDIAN_BIG)
|
||||||
{
|
{
|
||||||
|
|
|
@ -853,21 +853,29 @@ static char *
|
||||||
core_pid_to_str (struct target_ops *ops, ptid_t ptid)
|
core_pid_to_str (struct target_ops *ops, ptid_t ptid)
|
||||||
{
|
{
|
||||||
static char buf[64];
|
static char buf[64];
|
||||||
|
int pid;
|
||||||
|
|
||||||
|
/* The preferred way is to have a gdbarch/OS specific
|
||||||
|
implementation. */
|
||||||
if (core_gdbarch
|
if (core_gdbarch
|
||||||
&& gdbarch_core_pid_to_str_p (core_gdbarch))
|
&& gdbarch_core_pid_to_str_p (core_gdbarch))
|
||||||
{
|
return gdbarch_core_pid_to_str (core_gdbarch, ptid);
|
||||||
char *ret = gdbarch_core_pid_to_str (core_gdbarch, ptid);
|
|
||||||
|
|
||||||
if (ret != NULL)
|
/* Otherwise, if we don't have one, we'll just fallback to
|
||||||
return ret;
|
"process", with normal_pid_to_str. */
|
||||||
}
|
|
||||||
|
|
||||||
if (ptid_get_lwp (ptid) == 0)
|
/* Try the LWPID field first. */
|
||||||
xsnprintf (buf, sizeof buf, "<main task>");
|
pid = ptid_get_lwp (ptid);
|
||||||
else
|
if (pid != 0)
|
||||||
xsnprintf (buf, sizeof buf, "Thread %ld", ptid_get_lwp (ptid));
|
return normal_pid_to_str (pid_to_ptid (pid));
|
||||||
|
|
||||||
|
/* Otherwise, this isn't a "threaded" core -- use the PID field, but
|
||||||
|
only if it isn't a fake PID. */
|
||||||
|
if (!core_has_fake_pid)
|
||||||
|
return normal_pid_to_str (ptid);
|
||||||
|
|
||||||
|
/* No luck. We simply don't have a valid PID to print. */
|
||||||
|
xsnprintf (buf, sizeof buf, "<main task>");
|
||||||
return buf;
|
return buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -32,6 +32,7 @@
|
||||||
#include "frame-unwind.h"
|
#include "frame-unwind.h"
|
||||||
#include "regset.h"
|
#include "regset.h"
|
||||||
#include "gdb_string.h"
|
#include "gdb_string.h"
|
||||||
|
#include "linux-tdep.h"
|
||||||
|
|
||||||
/* Define the size (in bytes) of an FR-V instruction. */
|
/* Define the size (in bytes) of an FR-V instruction. */
|
||||||
static const int frv_instr_size = 4;
|
static const int frv_instr_size = 4;
|
||||||
|
@ -490,8 +491,11 @@ frv_linux_regset_from_core_section (struct gdbarch *gdbarch,
|
||||||
static void
|
static void
|
||||||
frv_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
frv_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
{
|
{
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
/* Set the sigtramp frame sniffer. */
|
/* Set the sigtramp frame sniffer. */
|
||||||
frame_unwind_append_unwinder (gdbarch, &frv_linux_sigtramp_frame_unwind);
|
frame_unwind_append_unwinder (gdbarch, &frv_linux_sigtramp_frame_unwind);
|
||||||
|
|
||||||
set_gdbarch_regset_from_core_section (gdbarch,
|
set_gdbarch_regset_from_core_section (gdbarch,
|
||||||
frv_linux_regset_from_core_section);
|
frv_linux_regset_from_core_section);
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,7 +32,7 @@
|
||||||
#include "regset.h"
|
#include "regset.h"
|
||||||
#include "regcache.h"
|
#include "regcache.h"
|
||||||
#include "hppa-tdep.h"
|
#include "hppa-tdep.h"
|
||||||
|
#include "linux-tdep.h"
|
||||||
#include "elf/common.h"
|
#include "elf/common.h"
|
||||||
|
|
||||||
/* Map DWARF DBX register numbers to GDB register numbers. */
|
/* Map DWARF DBX register numbers to GDB register numbers. */
|
||||||
|
@ -523,6 +523,8 @@ hppa_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
{
|
{
|
||||||
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
||||||
|
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
/* GNU/Linux is always ELF. */
|
/* GNU/Linux is always ELF. */
|
||||||
tdep->is_elf = 1;
|
tdep->is_elf = 1;
|
||||||
|
|
||||||
|
|
|
@ -28,6 +28,7 @@
|
||||||
#include "gdbcore.h"
|
#include "gdbcore.h"
|
||||||
#include "solib.h"
|
#include "solib.h"
|
||||||
#include "solib-target.h"
|
#include "solib-target.h"
|
||||||
|
#include "inferior.h"
|
||||||
|
|
||||||
/* Core file support. */
|
/* Core file support. */
|
||||||
|
|
||||||
|
@ -199,6 +200,22 @@ windows_core_xfer_shared_libraries (struct gdbarch *gdbarch,
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* This is how we want PTIDs from core files to be printed. */
|
||||||
|
|
||||||
|
static char *
|
||||||
|
i386_windows_core_pid_to_str (struct gdbarch *gdbarch, ptid_t ptid)
|
||||||
|
{
|
||||||
|
static char buf[80];
|
||||||
|
|
||||||
|
if (ptid_get_lwp (ptid) != 0)
|
||||||
|
{
|
||||||
|
snprintf (buf, sizeof (buf), "Thread 0x%lx", ptid_get_lwp (ptid));
|
||||||
|
return buf;
|
||||||
|
}
|
||||||
|
|
||||||
|
return normal_pid_to_str (ptid);
|
||||||
|
}
|
||||||
|
|
||||||
static CORE_ADDR
|
static CORE_ADDR
|
||||||
i386_cygwin_skip_trampoline_code (struct frame_info *frame, CORE_ADDR pc)
|
i386_cygwin_skip_trampoline_code (struct frame_info *frame, CORE_ADDR pc)
|
||||||
{
|
{
|
||||||
|
@ -233,6 +250,7 @@ i386_cygwin_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
(gdbarch, i386_windows_regset_from_core_section);
|
(gdbarch, i386_windows_regset_from_core_section);
|
||||||
set_gdbarch_core_xfer_shared_libraries
|
set_gdbarch_core_xfer_shared_libraries
|
||||||
(gdbarch, windows_core_xfer_shared_libraries);
|
(gdbarch, windows_core_xfer_shared_libraries);
|
||||||
|
set_gdbarch_core_pid_to_str (gdbarch, i386_windows_core_pid_to_str);
|
||||||
|
|
||||||
set_gdbarch_auto_wide_charset (gdbarch, i386_cygwin_auto_wide_charset);
|
set_gdbarch_auto_wide_charset (gdbarch, i386_cygwin_auto_wide_charset);
|
||||||
|
|
||||||
|
|
|
@ -654,6 +654,8 @@ i386_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
|
|
||||||
gdb_assert (tdesc_data);
|
gdb_assert (tdesc_data);
|
||||||
|
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
/* GNU/Linux uses ELF. */
|
/* GNU/Linux uses ELF. */
|
||||||
i386_elf_init_abi (info, gdbarch);
|
i386_elf_init_abi (info, gdbarch);
|
||||||
|
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
#include "osabi.h"
|
#include "osabi.h"
|
||||||
#include "solib-svr4.h"
|
#include "solib-svr4.h"
|
||||||
#include "symtab.h"
|
#include "symtab.h"
|
||||||
|
#include "linux-tdep.h"
|
||||||
|
|
||||||
/* The sigtramp code is in a non-readable (executable-only) region
|
/* The sigtramp code is in a non-readable (executable-only) region
|
||||||
of memory called the ``gate page''. The addresses in question
|
of memory called the ``gate page''. The addresses in question
|
||||||
|
@ -122,6 +123,8 @@ ia64_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
{
|
{
|
||||||
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
||||||
|
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
/* Set the method of obtaining the sigcontext addresses at which
|
/* Set the method of obtaining the sigcontext addresses at which
|
||||||
registers are saved. */
|
registers are saved. */
|
||||||
tdep->sigcontext_register_address = ia64_linux_sigcontext_register_address;
|
tdep->sigcontext_register_address = ia64_linux_sigcontext_register_address;
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
#include "auxv.h"
|
#include "auxv.h"
|
||||||
#include "target.h"
|
#include "target.h"
|
||||||
#include "elf/common.h"
|
#include "elf/common.h"
|
||||||
|
#include "inferior.h"
|
||||||
|
|
||||||
/* This function is suitable for architectures that don't
|
/* This function is suitable for architectures that don't
|
||||||
extend/override the standard siginfo structure. */
|
extend/override the standard siginfo structure. */
|
||||||
|
@ -152,3 +153,28 @@ linux_has_shared_address_space (void)
|
||||||
|
|
||||||
return target_is_uclinux;
|
return target_is_uclinux;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* This is how we want PTIDs from core files to be printed. */
|
||||||
|
|
||||||
|
static char *
|
||||||
|
linux_core_pid_to_str (struct gdbarch *gdbarch, ptid_t ptid)
|
||||||
|
{
|
||||||
|
static char buf[80];
|
||||||
|
|
||||||
|
if (ptid_get_lwp (ptid) != 0)
|
||||||
|
{
|
||||||
|
snprintf (buf, sizeof (buf), "LWP %ld", ptid_get_lwp (ptid));
|
||||||
|
return buf;
|
||||||
|
}
|
||||||
|
|
||||||
|
return normal_pid_to_str (ptid);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* To be called from the various GDB_OSABI_LINUX handlers for the
|
||||||
|
various GNU/Linux architectures and machine types. */
|
||||||
|
|
||||||
|
void
|
||||||
|
linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
|
{
|
||||||
|
set_gdbarch_core_pid_to_str (gdbarch, linux_core_pid_to_str);
|
||||||
|
}
|
||||||
|
|
|
@ -22,4 +22,6 @@
|
||||||
|
|
||||||
struct type *linux_get_siginfo_type (struct gdbarch *);
|
struct type *linux_get_siginfo_type (struct gdbarch *);
|
||||||
|
|
||||||
|
extern void linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch);
|
||||||
|
|
||||||
#endif /* linux-tdep.h */
|
#endif /* linux-tdep.h */
|
||||||
|
|
|
@ -37,6 +37,8 @@
|
||||||
#include "frame-unwind.h"
|
#include "frame-unwind.h"
|
||||||
|
|
||||||
#include "m32r-tdep.h"
|
#include "m32r-tdep.h"
|
||||||
|
#include "linux-tdep.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* Recognizing signal handler frames. */
|
/* Recognizing signal handler frames. */
|
||||||
|
@ -404,6 +406,8 @@ m32r_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
{
|
{
|
||||||
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
||||||
|
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
/* Since EVB register is not available for native debug, we reduce
|
/* Since EVB register is not available for native debug, we reduce
|
||||||
the number of registers. */
|
the number of registers. */
|
||||||
set_gdbarch_num_regs (gdbarch, M32R_NUM_REGS - 1);
|
set_gdbarch_num_regs (gdbarch, M32R_NUM_REGS - 1);
|
||||||
|
|
|
@ -38,6 +38,7 @@
|
||||||
#include "auxv.h"
|
#include "auxv.h"
|
||||||
#include "observer.h"
|
#include "observer.h"
|
||||||
#include "elf/common.h"
|
#include "elf/common.h"
|
||||||
|
#include "linux-tdep.h"
|
||||||
|
|
||||||
/* Offsets (in target ints) into jmp_buf. */
|
/* Offsets (in target ints) into jmp_buf. */
|
||||||
|
|
||||||
|
@ -338,6 +339,8 @@ m68k_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
{
|
{
|
||||||
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
||||||
|
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
tdep->jb_pc = M68K_LINUX_JB_PC;
|
tdep->jb_pc = M68K_LINUX_JB_PC;
|
||||||
tdep->jb_elt_size = M68K_LINUX_JB_ELEMENT_SIZE;
|
tdep->jb_elt_size = M68K_LINUX_JB_ELEMENT_SIZE;
|
||||||
|
|
||||||
|
|
|
@ -35,7 +35,7 @@
|
||||||
#include "trad-frame.h"
|
#include "trad-frame.h"
|
||||||
#include "frame-unwind.h"
|
#include "frame-unwind.h"
|
||||||
#include "tramp-frame.h"
|
#include "tramp-frame.h"
|
||||||
|
#include "linux-tdep.h"
|
||||||
|
|
||||||
static int
|
static int
|
||||||
microblaze_linux_memory_remove_breakpoint (struct gdbarch *gdbarch,
|
microblaze_linux_memory_remove_breakpoint (struct gdbarch *gdbarch,
|
||||||
|
@ -123,6 +123,8 @@ microblaze_linux_init_abi (struct gdbarch_info info,
|
||||||
{
|
{
|
||||||
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
||||||
|
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
set_gdbarch_memory_remove_breakpoint (gdbarch,
|
set_gdbarch_memory_remove_breakpoint (gdbarch,
|
||||||
microblaze_linux_memory_remove_breakpoint);
|
microblaze_linux_memory_remove_breakpoint);
|
||||||
|
|
||||||
|
|
|
@ -38,6 +38,7 @@
|
||||||
#include "target-descriptions.h"
|
#include "target-descriptions.h"
|
||||||
#include "mips-linux-tdep.h"
|
#include "mips-linux-tdep.h"
|
||||||
#include "glibc-tdep.h"
|
#include "glibc-tdep.h"
|
||||||
|
#include "linux-tdep.h"
|
||||||
|
|
||||||
static struct target_so_ops mips_svr4_so_ops;
|
static struct target_so_ops mips_svr4_so_ops;
|
||||||
|
|
||||||
|
@ -1140,6 +1141,8 @@ mips_linux_init_abi (struct gdbarch_info info,
|
||||||
enum mips_abi abi = mips_abi (gdbarch);
|
enum mips_abi abi = mips_abi (gdbarch);
|
||||||
struct tdesc_arch_data *tdesc_data = (void *) info.tdep_info;
|
struct tdesc_arch_data *tdesc_data = (void *) info.tdep_info;
|
||||||
|
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
switch (abi)
|
switch (abi)
|
||||||
{
|
{
|
||||||
case MIPS_ABI_O32:
|
case MIPS_ABI_O32:
|
||||||
|
|
|
@ -32,6 +32,7 @@
|
||||||
#include "frame.h"
|
#include "frame.h"
|
||||||
#include "trad-frame.h"
|
#include "trad-frame.h"
|
||||||
#include "tramp-frame.h"
|
#include "tramp-frame.h"
|
||||||
|
#include "linux-tdep.h"
|
||||||
|
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
@ -709,8 +710,10 @@ am33_linux_sigframe_cache_init (const struct tramp_frame *self,
|
||||||
Now's our chance to register our corefile handling. */
|
Now's our chance to register our corefile handling. */
|
||||||
|
|
||||||
static void
|
static void
|
||||||
am33_linux_init_osabi (struct gdbarch_info gdbinfo, struct gdbarch *gdbarch)
|
am33_linux_init_osabi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
{
|
{
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
set_gdbarch_regset_from_core_section (gdbarch,
|
set_gdbarch_regset_from_core_section (gdbarch,
|
||||||
am33_regset_from_core_section);
|
am33_regset_from_core_section);
|
||||||
set_solib_svr4_fetch_link_map_offsets
|
set_solib_svr4_fetch_link_map_offsets
|
||||||
|
|
|
@ -48,6 +48,7 @@
|
||||||
#include "arch-utils.h"
|
#include "arch-utils.h"
|
||||||
#include "spu-tdep.h"
|
#include "spu-tdep.h"
|
||||||
#include "xml-syscall.h"
|
#include "xml-syscall.h"
|
||||||
|
#include "linux-tdep.h"
|
||||||
|
|
||||||
#include "features/rs6000/powerpc-32l.c"
|
#include "features/rs6000/powerpc-32l.c"
|
||||||
#include "features/rs6000/powerpc-altivec32l.c"
|
#include "features/rs6000/powerpc-altivec32l.c"
|
||||||
|
@ -1486,6 +1487,8 @@ ppc_linux_init_abi (struct gdbarch_info info,
|
||||||
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
||||||
struct tdesc_arch_data *tdesc_data = (void *) info.tdep_info;
|
struct tdesc_arch_data *tdesc_data = (void *) info.tdep_info;
|
||||||
|
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
/* PPC GNU/Linux uses either 64-bit or 128-bit long doubles; where
|
/* PPC GNU/Linux uses either 64-bit or 128-bit long doubles; where
|
||||||
128-bit, they are IBM long double, not IEEE quad long double as
|
128-bit, they are IBM long double, not IEEE quad long double as
|
||||||
in the System V ABI PowerPC Processor Supplement. We can safely
|
in the System V ABI PowerPC Processor Supplement. We can safely
|
||||||
|
|
|
@ -25,6 +25,7 @@
|
||||||
|
|
||||||
#include "glibc-tdep.h"
|
#include "glibc-tdep.h"
|
||||||
#include "sh-tdep.h"
|
#include "sh-tdep.h"
|
||||||
|
#include "linux-tdep.h"
|
||||||
|
|
||||||
#define REGSx16(base) \
|
#define REGSx16(base) \
|
||||||
{(base), 0}, \
|
{(base), 0}, \
|
||||||
|
@ -72,6 +73,8 @@ static const struct sh_corefile_regmap fpregs_table[] =
|
||||||
static void
|
static void
|
||||||
sh_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
sh_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
{
|
{
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
/* GNU/Linux uses SVR4-style shared libraries. */
|
/* GNU/Linux uses SVR4-style shared libraries. */
|
||||||
set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target);
|
set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target);
|
||||||
set_solib_svr4_fetch_link_map_offsets
|
set_solib_svr4_fetch_link_map_offsets
|
||||||
|
|
|
@ -33,6 +33,7 @@
|
||||||
#include "trad-frame.h"
|
#include "trad-frame.h"
|
||||||
#include "tramp-frame.h"
|
#include "tramp-frame.h"
|
||||||
#include "xml-syscall.h"
|
#include "xml-syscall.h"
|
||||||
|
#include "linux-tdep.h"
|
||||||
|
|
||||||
/* The syscall's XML filename for sparc 32-bit. */
|
/* The syscall's XML filename for sparc 32-bit. */
|
||||||
#define XML_SYSCALL_FILENAME_SPARC32 "syscalls/sparc-linux.xml"
|
#define XML_SYSCALL_FILENAME_SPARC32 "syscalls/sparc-linux.xml"
|
||||||
|
@ -273,6 +274,8 @@ sparc32_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
{
|
{
|
||||||
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
||||||
|
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
tdep->gregset = regset_alloc (gdbarch, sparc32_linux_supply_core_gregset,
|
tdep->gregset = regset_alloc (gdbarch, sparc32_linux_supply_core_gregset,
|
||||||
sparc32_linux_collect_core_gregset);
|
sparc32_linux_collect_core_gregset);
|
||||||
tdep->sizeof_gregset = 152;
|
tdep->sizeof_gregset = 152;
|
||||||
|
|
|
@ -32,6 +32,7 @@
|
||||||
#include "trad-frame.h"
|
#include "trad-frame.h"
|
||||||
#include "tramp-frame.h"
|
#include "tramp-frame.h"
|
||||||
#include "xml-syscall.h"
|
#include "xml-syscall.h"
|
||||||
|
#include "linux-tdep.h"
|
||||||
|
|
||||||
/* The syscall's XML filename for sparc 64-bit. */
|
/* The syscall's XML filename for sparc 64-bit. */
|
||||||
#define XML_SYSCALL_FILENAME_SPARC64 "syscalls/sparc64-linux.xml"
|
#define XML_SYSCALL_FILENAME_SPARC64 "syscalls/sparc64-linux.xml"
|
||||||
|
@ -237,6 +238,8 @@ sparc64_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
{
|
{
|
||||||
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
|
||||||
|
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
tdep->gregset = regset_alloc (gdbarch, sparc64_linux_supply_core_gregset,
|
tdep->gregset = regset_alloc (gdbarch, sparc64_linux_supply_core_gregset,
|
||||||
sparc64_linux_collect_core_gregset);
|
sparc64_linux_collect_core_gregset);
|
||||||
tdep->sizeof_gregset = 288;
|
tdep->sizeof_gregset = 288;
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
|
|
||||||
#include "defs.h"
|
#include "defs.h"
|
||||||
#include "osabi.h"
|
#include "osabi.h"
|
||||||
|
#include "linux-tdep.h"
|
||||||
#include "solib-svr4.h"
|
#include "solib-svr4.h"
|
||||||
#include "symtab.h"
|
#include "symtab.h"
|
||||||
|
|
||||||
|
@ -28,6 +28,8 @@
|
||||||
static void
|
static void
|
||||||
xtensa_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
xtensa_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||||
{
|
{
|
||||||
|
linux_init_abi (info, gdbarch);
|
||||||
|
|
||||||
set_solib_svr4_fetch_link_map_offsets
|
set_solib_svr4_fetch_link_map_offsets
|
||||||
(gdbarch, svr4_ilp32_fetch_link_map_offsets);
|
(gdbarch, svr4_ilp32_fetch_link_map_offsets);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue