GDB (xrefs)
|
#include "defs.h"
#include "gdbcore.h"
#include "target.h"
#include "solib-svr4.h"
#include "osabi.h"
#include "mips-tdep.h"
#include "gdb_string.h"
#include "gdb_assert.h"
#include "frame.h"
#include "regcache.h"
#include "trad-frame.h"
#include "tramp-frame.h"
#include "gdbtypes.h"
#include "objfiles.h"
#include "solib.h"
#include "solist.h"
#include "symtab.h"
#include "target-descriptions.h"
#include "regset.h"
#include "mips-linux-tdep.h"
#include "glibc-tdep.h"
#include "linux-tdep.h"
#include "xml-syscall.h"
#include "gdb_signals.h"
Go to the source code of this file.
#define MIPS64_LINUX_JB_PC 0 |
Definition at line 332 of file mips-linux-tdep.c.
Referenced by mips64_linux_get_longjmp_target().
#define MIPS_INST_LI_V0_N32_RT_SIGRETURN 0x24020000 + MIPS_NR_N32_rt_sigreturn |
Definition at line 863 of file mips-linux-tdep.c.
#define MIPS_INST_LI_V0_N64_RT_SIGRETURN 0x24020000 + MIPS_NR_N64_rt_sigreturn |
Definition at line 862 of file mips-linux-tdep.c.
#define MIPS_INST_LI_V0_RT_SIGRETURN 0x24020000 + MIPS_NR_rt_sigreturn |
Definition at line 861 of file mips-linux-tdep.c.
#define MIPS_INST_LI_V0_SIGRETURN 0x24020000 + MIPS_NR_sigreturn |
Definition at line 860 of file mips-linux-tdep.c.
#define MIPS_INST_SYSCALL 0x0000000c |
Definition at line 864 of file mips-linux-tdep.c.
#define MIPS_LINUX_JB_ELEMENT_SIZE 4 |
Definition at line 90 of file mips-linux-tdep.c.
Referenced by mips_linux_get_longjmp_target().
#define MIPS_LINUX_JB_PC 0 |
Definition at line 91 of file mips-linux-tdep.c.
Referenced by mips_linux_get_longjmp_target().
#define MIPS_NR_LINUX 4000 |
Definition at line 851 of file mips-linux-tdep.c.
#define MIPS_NR_N32_LINUX 6000 |
Definition at line 853 of file mips-linux-tdep.c.
#define MIPS_NR_N32_rt_sigreturn MIPS_NR_N32_LINUX + 211 |
Definition at line 858 of file mips-linux-tdep.c.
Referenced by mips_linux_syscall_next_pc().
#define MIPS_NR_N64_LINUX 5000 |
Definition at line 852 of file mips-linux-tdep.c.
#define MIPS_NR_N64_rt_sigreturn MIPS_NR_N64_LINUX + 211 |
Definition at line 857 of file mips-linux-tdep.c.
Referenced by mips_linux_syscall_next_pc().
#define MIPS_NR_rt_sigreturn MIPS_NR_LINUX + 193 |
Definition at line 856 of file mips-linux-tdep.c.
Referenced by mips_linux_syscall_next_pc().
#define MIPS_NR_sigreturn MIPS_NR_LINUX + 119 |
Definition at line 855 of file mips-linux-tdep.c.
Referenced by mips_linux_syscall_next_pc().
#define N32_SIGFRAME_SIGCONTEXT_OFFSET |
Definition at line 1192 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N32_STACK_T_SIZE STACK_T_SIZE |
Definition at line 1188 of file mips-linux-tdep.c.
#define N32_UCONTEXT_SIGCONTEXT_OFFSET (2 * 4 + N32_STACK_T_SIZE + 4) |
Definition at line 1190 of file mips-linux-tdep.c.
#define N64_SIGCONTEXT_DSPCTL (74 * 8 + 0) |
Definition at line 1211 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_SIGCONTEXT_FPCSR (73 * 8 + 0) |
Definition at line 1210 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_SIGCONTEXT_FPREGS (32 * 8) |
Definition at line 1200 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_SIGCONTEXT_HI (64 * 8) |
Definition at line 1201 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_SIGCONTEXT_HI1 (65 * 8) |
Definition at line 1202 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_SIGCONTEXT_HI2 (66 * 8) |
Definition at line 1203 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_SIGCONTEXT_HI3 (67 * 8) |
Definition at line 1204 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_SIGCONTEXT_LO (68 * 8) |
Definition at line 1205 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_SIGCONTEXT_LO1 (69 * 8) |
Definition at line 1206 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_SIGCONTEXT_LO2 (70 * 8) |
Definition at line 1207 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_SIGCONTEXT_LO3 (71 * 8) |
Definition at line 1208 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_SIGCONTEXT_PC (72 * 8) |
Definition at line 1209 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_SIGCONTEXT_REG_SIZE 8 |
Definition at line 1213 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_SIGCONTEXT_REGS (0 * 8) |
Definition at line 1199 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_SIGFRAME_SIGCONTEXT_OFFSET |
Definition at line 1195 of file mips-linux-tdep.c.
Referenced by mips_linux_n32n64_sigframe_init().
#define N64_STACK_T_SIZE (2 * 8 + 4) |
Definition at line 1189 of file mips-linux-tdep.c.
#define N64_UCONTEXT_SIGCONTEXT_OFFSET (2 * 8 + N64_STACK_T_SIZE + 4) |
Definition at line 1191 of file mips-linux-tdep.c.
#define RTSIGFRAME_SIGCONTEXT_OFFSET |
Definition at line 991 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define RTSIGFRAME_SIGINFO_SIZE 128 |
Definition at line 988 of file mips-linux-tdep.c.
#define SIGCONTEXT_BADVADDR (71 * 8 + 4) |
Definition at line 1003 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_CAUSE (71 * 8 + 0) |
Definition at line 1002 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_DSPCTL (68 * 8 + 0) |
Definition at line 999 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_FPCSR (66 * 8 + 4) |
Definition at line 998 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_FPREGS (34 * 8) |
Definition at line 997 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_HI (69 * 8) |
Definition at line 1000 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_HI1 (71 * 8 + 0) |
Definition at line 1004 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_HI2 (72 * 8 + 0) |
Definition at line 1006 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_HI3 (73 * 8 + 0) |
Definition at line 1008 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_LO (70 * 8) |
Definition at line 1001 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_LO1 (71 * 8 + 4) |
Definition at line 1005 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_LO2 (72 * 8 + 4) |
Definition at line 1007 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_LO3 (73 * 8 + 4) |
Definition at line 1009 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_PC (1 * 8) |
Definition at line 995 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_REG_SIZE 8 |
Definition at line 1011 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGCONTEXT_REGS (2 * 8) |
Definition at line 996 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define SIGFRAME_SIGCONTEXT_OFFSET (6 * 4) |
Definition at line 986 of file mips-linux-tdep.c.
Referenced by mips_linux_o32_sigframe_init().
#define STACK_T_SIZE (3 * 4) |
Definition at line 989 of file mips-linux-tdep.c.
#define UCONTEXT_SIGCONTEXT_OFFSET (2 * 4 + STACK_T_SIZE + 4) |
Definition at line 990 of file mips-linux-tdep.c.
anonymous enum |
Definition at line 55 of file mips-linux-tdep.c.
void _initialize_mips_linux_tdep | ( | void | ) |
Definition at line 1674 of file mips-linux-tdep.c.
References _initialize_mips_linux_tdep, GDB_OSABI_LINUX, gdbarch_register_osabi(), and mips_linux_init_abi().
void mips64_fill_fpregset | ( | const struct regcache * | regcache, |
mips64_elf_fpregset_t * | fpregsetp, | ||
int | regno | ||
) |
Definition at line 548 of file mips-linux-tdep.c.
References gdbarch::byte_order, extract_signed_integer(), gdbarch_byte_order(), gdbarch_fp0_regnum(), get_regcache_arch(), LONGEST, MAX_REGISTER_SIZE, mips64_fill_fpregset(), regcache_raw_collect(), register_size(), store_signed_integer(), and to.
Referenced by fill_fpregset(), mips64_fill_fpregset(), mips64_fill_fpregset_wrapper(), and mips64_linux_regsets_store_registers().
static void mips64_fill_fpregset_wrapper | ( | const struct regset * | regset, |
const struct regcache * | regcache, | ||
int | regnum, | ||
void * | gregs, | ||
size_t | len | ||
) | [static] |
Definition at line 613 of file mips-linux-tdep.c.
References gdb_assert, and mips64_fill_fpregset().
Referenced by mips_linux_regset_from_core_section().
void mips64_fill_gregset | ( | const struct regcache * | regcache, |
mips64_elf_gregset_t * | gregsetp, | ||
int | regno | ||
) |
Definition at line 427 of file mips-linux-tdep.c.
References gdbarch::byte_order, extract_signed_integer(), gdbarch_byte_order(), get_regcache_arch(), LONGEST, MAX_REGISTER_SIZE, memset(), MIPS64_EF_CP0_BADVADDR, MIPS64_EF_CP0_CAUSE, MIPS64_EF_CP0_EPC, MIPS64_EF_CP0_STATUS, MIPS64_EF_HI, MIPS64_EF_LO, MIPS64_EF_REG0, mips64_fill_gregset(), mips_linux_restart_reg_p(), MIPS_PS_REGNUM, MIPS_RESTART_REGNUM, regcache_raw_collect(), register_size(), and store_signed_integer().
Referenced by fill_gregset(), mips64_fill_gregset(), mips64_fill_gregset_wrapper(), and mips64_linux_regsets_store_registers().
static void mips64_fill_gregset_wrapper | ( | const struct regset * | regset, |
const struct regcache * | regcache, | ||
int | regnum, | ||
void * | gregs, | ||
size_t | len | ||
) | [static] |
Definition at line 486 of file mips-linux-tdep.c.
References gdb_assert, and mips64_fill_gregset().
Referenced by mips_linux_regset_from_core_section().
static int mips64_linux_get_longjmp_target | ( | struct frame_info * | frame, |
CORE_ADDR * | pc | ||
) | [static] |
Definition at line 335 of file mips-linux-tdep.c.
References gdbarch::byte_order, extract_unsigned_integer(), gdbarch_byte_order(), gdbarch_ptr_bit(), get_frame_arch(), get_frame_register_unsigned(), MIPS64_LINUX_JB_PC, MIPS_A0_REGNUM, and target_read_memory().
Referenced by mips_linux_init_abi().
void mips64_supply_fpregset | ( | struct regcache * | regcache, |
const mips64_elf_fpregset_t * | fpregsetp | ||
) |
Definition at line 498 of file mips-linux-tdep.c.
References gdbarch_byte_order(), gdbarch_fp0_regnum(), get_regcache_arch(), regcache_raw_supply(), register_size(), and supply_32bit_reg().
Referenced by mips64_linux_regsets_fetch_registers(), mips64_supply_fpregset_wrapper(), and supply_fpregset().
static void mips64_supply_fpregset_wrapper | ( | const struct regset * | regset, |
struct regcache * | regcache, | ||
int | regnum, | ||
const void * | gregs, | ||
size_t | len | ||
) | [static] |
Definition at line 535 of file mips-linux-tdep.c.
References gdb_assert, and mips64_supply_fpregset().
Referenced by mips_linux_regset_from_core_section().
void mips64_supply_gregset | ( | struct regcache * | regcache, |
const mips64_elf_gregset_t * | gregsetp | ||
) |
Definition at line 378 of file mips-linux-tdep.c.
References get_regcache_arch(), MAX_REGISTER_SIZE, memset(), MIPS64_EF_CP0_BADVADDR, MIPS64_EF_CP0_CAUSE, MIPS64_EF_CP0_EPC, MIPS64_EF_CP0_STATUS, MIPS64_EF_HI, MIPS64_EF_LO, MIPS64_EF_REG0, MIPS64_EF_REG31, mips_linux_restart_reg_p(), MIPS_PS_REGNUM, MIPS_RESTART_REGNUM, MIPS_ZERO_REGNUM, regcache_raw_supply(), and supply_64bit_reg().
Referenced by mips64_linux_regsets_fetch_registers(), mips64_supply_gregset_wrapper(), and supply_gregset().
static void mips64_supply_gregset_wrapper | ( | const struct regset * | regset, |
struct regcache * | regcache, | ||
int | regnum, | ||
const void * | gregs, | ||
size_t | len | ||
) | [static] |
Definition at line 415 of file mips-linux-tdep.c.
References gdb_assert, and mips64_supply_gregset().
Referenced by mips_linux_regset_from_core_section().
void mips_fill_fpregset | ( | const struct regcache * | regcache, |
mips_elf_fpregset_t * | fpregsetp, | ||
int | regno | ||
) |
Definition at line 283 of file mips-linux-tdep.c.
References gdbarch_fp0_regnum(), get_regcache_arch(), mips_fill_fpregset(), regcache_raw_collect(), and to.
Referenced by fill_fpregset(), mips_fill_fpregset(), and mips_fill_fpregset_wrapper().
static void mips_fill_fpregset_wrapper | ( | const struct regset * | regset, |
const struct regcache * | regcache, | ||
int | regnum, | ||
void * | gregs, | ||
size_t | len | ||
) | [static] |
Definition at line 313 of file mips-linux-tdep.c.
References gdb_assert, and mips_fill_fpregset().
Referenced by mips_linux_regset_from_core_section().
void mips_fill_gregset | ( | const struct regcache * | regcache, |
mips_elf_gregset_t * | gregsetp, | ||
int | regno | ||
) |
Definition at line 177 of file mips-linux-tdep.c.
References EF_CP0_BADVADDR, EF_CP0_CAUSE, EF_CP0_EPC, EF_CP0_STATUS, EF_HI, EF_LO, EF_REG0, get_regcache_arch(), memset(), mips_fill_gregset(), mips_linux_restart_reg_p(), MIPS_PS_REGNUM, MIPS_RESTART_REGNUM, and regcache_raw_collect().
Referenced by fill_gregset(), mips_fill_gregset(), and mips_fill_gregset_wrapper().
static void mips_fill_gregset_wrapper | ( | const struct regset * | regset, |
const struct regcache * | regcache, | ||
int | regnum, | ||
void * | gregs, | ||
size_t | len | ||
) | [static] |
Definition at line 233 of file mips-linux-tdep.c.
References gdb_assert, and mips_fill_gregset().
Referenced by mips_linux_regset_from_core_section().
static enum gdb_signal mips_gdb_signal_from_target | ( | struct gdbarch * | gdbarch, |
int | signal | ||
) | [static] |
Definition at line 1475 of file mips-linux-tdep.c.
References int, linux_gdb_signal_from_target(), MIPS_LINUX_SIGBUS, MIPS_LINUX_SIGCHLD, MIPS_LINUX_SIGCONT, MIPS_LINUX_SIGEMT, MIPS_LINUX_SIGIO, MIPS_LINUX_SIGPROF, MIPS_LINUX_SIGPWR, MIPS_LINUX_SIGRTMAX, MIPS_LINUX_SIGRTMIN, MIPS_LINUX_SIGSTOP, MIPS_LINUX_SIGSYS, MIPS_LINUX_SIGTSTP, MIPS_LINUX_SIGTTIN, MIPS_LINUX_SIGTTOU, MIPS_LINUX_SIGURG, MIPS_LINUX_SIGUSR1, MIPS_LINUX_SIGUSR2, MIPS_LINUX_SIGVTALRM, MIPS_LINUX_SIGWINCH, MIPS_LINUX_SIGXCPU, MIPS_LINUX_SIGXFSZ, and offset.
Referenced by mips_linux_init_abi().
static int mips_gdb_signal_to_target | ( | struct gdbarch * | gdbarch, |
enum gdb_signal | signal | ||
) | [static] |
Definition at line 1382 of file mips-linux-tdep.c.
References linux_gdb_signal_to_target(), MIPS_LINUX_SIGBUS, MIPS_LINUX_SIGCHLD, MIPS_LINUX_SIGCONT, MIPS_LINUX_SIGEMT, MIPS_LINUX_SIGIO, MIPS_LINUX_SIGPOLL, MIPS_LINUX_SIGPROF, MIPS_LINUX_SIGPWR, MIPS_LINUX_SIGRT64, MIPS_LINUX_SIGRTMIN, MIPS_LINUX_SIGSTOP, MIPS_LINUX_SIGSYS, MIPS_LINUX_SIGTSTP, MIPS_LINUX_SIGTTIN, MIPS_LINUX_SIGTTOU, MIPS_LINUX_SIGURG, MIPS_LINUX_SIGUSR1, MIPS_LINUX_SIGUSR2, MIPS_LINUX_SIGVTALRM, MIPS_LINUX_SIGWINCH, MIPS_LINUX_SIGXCPU, MIPS_LINUX_SIGXFSZ, and offset.
Referenced by mips_linux_init_abi().
static struct target_desc* mips_linux_core_read_description | ( | struct gdbarch * | gdbarch, |
struct target_ops * | target, | ||
bfd * | abfd | ||
) | [static, read] |
Definition at line 683 of file mips-linux-tdep.c.
References mips_tdesc_gp32, and mips_tdesc_gp64.
Referenced by mips_linux_init_abi().
static int mips_linux_get_longjmp_target | ( | struct frame_info * | frame, |
CORE_ADDR * | pc | ||
) | [static] |
Definition at line 94 of file mips-linux-tdep.c.
References gdbarch::byte_order, extract_unsigned_integer(), gdbarch_byte_order(), gdbarch_ptr_bit(), get_frame_arch(), get_frame_register_unsigned(), MIPS_A0_REGNUM, MIPS_LINUX_JB_ELEMENT_SIZE, MIPS_LINUX_JB_PC, and target_read_memory().
Referenced by mips_linux_init_abi().
static LONGEST mips_linux_get_syscall_number | ( | struct gdbarch * | gdbarch, |
ptid_t | ptid | ||
) | [static] |
Definition at line 1350 of file mips-linux-tdep.c.
References extract_signed_integer(), gdb_assert, gdbarch_byte_order(), gdbarch_tdep(), get_thread_regcache(), LONGEST, gdbarch_tdep::mips_abi, MIPS_ABI_N32, MIPS_ABI_N64, MIPS_ABI_O32, MIPS_V0_REGNUM, regcache_cooked_read(), and register_size().
Referenced by mips_linux_init_abi().
static int mips_linux_in_dynsym_resolve_code | ( | CORE_ADDR | pc | ) | [static] |
Definition at line 798 of file mips-linux-tdep.c.
References mips_linux_in_dynsym_stub(), and svr4_in_dynsym_resolve_code().
Referenced by mips_linux_init_abi().
static int mips_linux_in_dynsym_stub | ( | CORE_ADDR | pc | ) | [static] |
Definition at line 724 of file mips-linux-tdep.c.
References extract_unsigned_integer(), gdbarch_byte_order(), in_mips_stubs_section(), MIPS_ABI_N64, p, read_memory(), target_gdbarch(), and ULONGEST.
Referenced by mips_linux_in_dynsym_resolve_code().
static void mips_linux_init_abi | ( | struct gdbarch_info | info, |
struct gdbarch * | gdbarch | ||
) | [static] |
Definition at line 1561 of file mips-linux-tdep.c.
References gdbarch_tdep::abi, floatformats_ia64_quad, gdb_assert, gdbarch_num_regs(), gdbarch_tdep(), target_so_ops::in_dynsym_resolve_code, linux_init_abi(), mips64_linux_get_longjmp_target(), MIPS_ABI_N32, MIPS_ABI_N64, MIPS_ABI_O32, mips_gdb_signal_from_target(), mips_gdb_signal_to_target(), mips_linux_core_read_description(), mips_linux_get_longjmp_target(), mips_linux_get_syscall_number(), mips_linux_in_dynsym_resolve_code(), mips_linux_regset_from_core_section(), mips_linux_skip_resolver(), mips_linux_syscall_next_pc(), mips_linux_write_pc(), MIPS_RESTART_REGNUM, mips_software_single_step(), mips_svr4_so_ops, set_gdbarch_core_read_description(), set_gdbarch_fetch_tls_load_module_address(), set_gdbarch_gdb_signal_from_target(), set_gdbarch_gdb_signal_to_target(), set_gdbarch_get_longjmp_target(), set_gdbarch_get_syscall_number(), set_gdbarch_long_double_bit(), set_gdbarch_long_double_format(), set_gdbarch_num_pseudo_regs(), set_gdbarch_num_regs(), set_gdbarch_regset_from_core_section(), set_gdbarch_skip_solib_resolver(), set_gdbarch_software_single_step(), set_gdbarch_write_pc(), set_solib_ops(), set_solib_svr4_fetch_link_map_offsets(), set_xml_syscall_file_name(), svr4_fetch_objfile_link_map(), svr4_ilp32_fetch_link_map_offsets(), svr4_lp64_fetch_link_map_offsets(), svr4_so_ops, gdbarch_tdep::syscall_next_pc, gdbarch_info::target_desc, gdbarch_info::tdep_info, tdesc_data, tdesc_find_feature(), tdesc_numbered_register(), and tramp_frame_prepend_unwinder().
Referenced by _initialize_mips_linux_tdep().
static void mips_linux_n32n64_sigframe_init | ( | const struct tramp_frame * | self, |
struct frame_info * | this_frame, | ||
struct trad_frame_cache * | this_cache, | ||
CORE_ADDR | func | ||
) | [static] |
Definition at line 1216 of file mips-linux-tdep.c.
References mips_regnum::dspacc, mips_regnum::dspctl, mips_regnum::fp0, mips_regnum::fp_control_status, frame_id_build(), gdbarch_num_regs(), get_frame_arch(), get_frame_sp(), mips_regnum::hi, mips_regnum::lo, mips_linux_restart_reg_p(), mips_regnum(), MIPS_RESTART_REGNUM, MIPS_ZERO_REGNUM, N32_SIGFRAME_SIGCONTEXT_OFFSET, N64_SIGCONTEXT_DSPCTL, N64_SIGCONTEXT_FPCSR, N64_SIGCONTEXT_FPREGS, N64_SIGCONTEXT_HI, N64_SIGCONTEXT_HI1, N64_SIGCONTEXT_HI2, N64_SIGCONTEXT_HI3, N64_SIGCONTEXT_LO, N64_SIGCONTEXT_LO1, N64_SIGCONTEXT_LO2, N64_SIGCONTEXT_LO3, N64_SIGCONTEXT_PC, N64_SIGCONTEXT_REG_SIZE, N64_SIGCONTEXT_REGS, N64_SIGFRAME_SIGCONTEXT_OFFSET, mips_regnum::pc, trad_frame_set_id(), and trad_frame_set_reg_addr().
static void mips_linux_o32_sigframe_init | ( | const struct tramp_frame * | self, |
struct frame_info * | this_frame, | ||
struct trad_frame_cache * | this_cache, | ||
CORE_ADDR | func | ||
) | [static] |
Definition at line 1014 of file mips-linux-tdep.c.
References mips_regnum::badvaddr, mips_regnum::cause, mips_regnum::dspacc, mips_regnum::dspctl, mips_regnum::fp0, mips_regnum::fp_control_status, frame_id_build(), gdbarch_byte_order(), gdbarch_num_regs(), get_frame_arch(), get_frame_sp(), mips_regnum::hi, mips_regnum::lo, mips_linux_restart_reg_p(), mips_regnum(), MIPS_RESTART_REGNUM, MIPS_ZERO_REGNUM, mips_regnum::pc, RTSIGFRAME_SIGCONTEXT_OFFSET, SIGCONTEXT_BADVADDR, SIGCONTEXT_CAUSE, SIGCONTEXT_DSPCTL, SIGCONTEXT_FPCSR, SIGCONTEXT_FPREGS, SIGCONTEXT_HI, SIGCONTEXT_HI1, SIGCONTEXT_HI2, SIGCONTEXT_HI3, SIGCONTEXT_LO, SIGCONTEXT_LO1, SIGCONTEXT_LO2, SIGCONTEXT_LO3, SIGCONTEXT_PC, SIGCONTEXT_REG_SIZE, SIGCONTEXT_REGS, SIGFRAME_SIGCONTEXT_OFFSET, trad_frame_set_id(), and trad_frame_set_reg_addr().
static struct regset* mips_linux_regset_from_core_section | ( | struct gdbarch * | gdbarch, |
const char * | sect_name, | ||
size_t | sect_size | ||
) | [static, read] |
Definition at line 623 of file mips-linux-tdep.c.
References _, gdbarch_tdep::fpregset, gdbarch_tdep::fpregset64, gdbarch_tdep(), gdbarch_tdep::gregset, gdbarch_tdep::gregset64, mips64_fill_fpregset_wrapper(), mips64_fill_gregset_wrapper(), mips64_supply_fpregset_wrapper(), mips64_supply_gregset_wrapper(), mips_fill_fpregset_wrapper(), mips_fill_gregset_wrapper(), mips_supply_fpregset_wrapper(), mips_supply_gregset_wrapper(), regset_alloc(), and warning().
Referenced by mips_linux_init_abi().
int mips_linux_restart_reg_p | ( | struct gdbarch * | gdbarch | ) |
Definition at line 1314 of file mips-linux-tdep.c.
References gdbarch_target_desc(), MIPS_RESTART_REGNUM, register_size(), and tdesc_has_registers().
Referenced by mips64_fill_gregset(), mips64_linux_register_addr(), mips64_supply_gregset(), mips_fill_gregset(), mips_linux_n32n64_sigframe_init(), mips_linux_o32_sigframe_init(), mips_linux_register_addr(), mips_linux_write_pc(), and mips_supply_gregset().
static CORE_ADDR mips_linux_skip_resolver | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | pc | ||
) | [static] |
Definition at line 824 of file mips-linux-tdep.c.
References frame_unwind_caller_pc(), get_current_frame(), glibc_skip_solib_resolver(), lookup_minimal_symbol(), and SYMBOL_VALUE_ADDRESS.
Referenced by mips_linux_init_abi().
static CORE_ADDR mips_linux_syscall_next_pc | ( | struct frame_info * | frame | ) | [static] |
Definition at line 1330 of file mips-linux-tdep.c.
References frame_unwind_caller_pc(), get_current_frame(), get_frame_pc(), get_frame_register_unsigned(), MIPS_NR_N32_rt_sigreturn, MIPS_NR_N64_rt_sigreturn, MIPS_NR_rt_sigreturn, MIPS_NR_sigreturn, MIPS_V0_REGNUM, and ULONGEST.
Referenced by mips_linux_init_abi().
static void mips_linux_write_pc | ( | struct regcache * | regcache, |
CORE_ADDR | pc | ||
) | [static] |
Definition at line 1300 of file mips-linux-tdep.c.
References get_regcache_arch(), mips_linux_restart_reg_p(), MIPS_RESTART_REGNUM, mips_write_pc(), and regcache_cooked_write_unsigned().
Referenced by mips_linux_init_abi().
void mips_supply_fpregset | ( | struct regcache * | regcache, |
const mips_elf_fpregset_t * | fpregsetp | ||
) |
Definition at line 245 of file mips-linux-tdep.c.
References gdbarch_fp0_regnum(), get_regcache_arch(), MAX_REGISTER_SIZE, memset(), and regcache_raw_supply().
Referenced by mips_supply_fpregset_wrapper(), and supply_fpregset().
static void mips_supply_fpregset_wrapper | ( | const struct regset * | regset, |
struct regcache * | regcache, | ||
int | regnum, | ||
const void * | gregs, | ||
size_t | len | ||
) | [static] |
Definition at line 270 of file mips-linux-tdep.c.
References gdb_assert, and mips_supply_fpregset().
Referenced by mips_linux_regset_from_core_section().
void mips_supply_gregset | ( | struct regcache * | regcache, |
const mips_elf_gregset_t * | gregsetp | ||
) |
Definition at line 133 of file mips-linux-tdep.c.
References EF_CP0_BADVADDR, EF_CP0_CAUSE, EF_CP0_EPC, EF_CP0_STATUS, EF_HI, EF_LO, EF_REG0, EF_REG31, get_regcache_arch(), MAX_REGISTER_SIZE, memset(), mips_linux_restart_reg_p(), MIPS_PS_REGNUM, MIPS_RESTART_REGNUM, MIPS_ZERO_REGNUM, regcache_raw_supply(), and supply_32bit_reg().
Referenced by mips_supply_gregset_wrapper(), and supply_gregset().
static void mips_supply_gregset_wrapper | ( | const struct regset * | regset, |
struct regcache * | regcache, | ||
int | regnum, | ||
const void * | gregs, | ||
size_t | len | ||
) | [static] |
Definition at line 165 of file mips-linux-tdep.c.
References gdb_assert, and mips_supply_gregset().
Referenced by mips_linux_regset_from_core_section().
static void supply_32bit_reg | ( | struct regcache * | regcache, |
int | regnum, | ||
const void * | addr | ||
) | [static] |
Definition at line 120 of file mips-linux-tdep.c.
References gdbarch::byte_order, extract_signed_integer(), gdbarch_byte_order(), get_regcache_arch(), MAX_REGISTER_SIZE, regcache_raw_supply(), register_size(), and store_signed_integer().
Referenced by mips64_supply_fpregset(), and mips_supply_gregset().
static void supply_64bit_reg | ( | struct regcache * | regcache, |
int | regnum, | ||
const gdb_byte * | buf | ||
) | [static] |
Definition at line 364 of file mips-linux-tdep.c.
References gdbarch_byte_order(), get_regcache_arch(), regcache_raw_supply(), and register_size().
Referenced by mips64_supply_gregset().
Referenced by _initialize_mips_linux_tdep(), and initialize_all_files().
struct tramp_frame mips_linux_n32_rt_sigframe [static] |
{ SIGTRAMP_FRAME, 4, { { MIPS_INST_LI_V0_N32_RT_SIGRETURN, -1 }, { MIPS_INST_SYSCALL, -1 }, { TRAMP_SENTINEL_INSN, -1 } }, mips_linux_n32n64_sigframe_init }
Definition at line 887 of file mips-linux-tdep.c.
struct tramp_frame mips_linux_n64_rt_sigframe [static] |
{ SIGTRAMP_FRAME, 4, { { MIPS_INST_LI_V0_N64_RT_SIGRETURN, -1 }, { MIPS_INST_SYSCALL, -1 }, { TRAMP_SENTINEL_INSN, -1 } }, mips_linux_n32n64_sigframe_init }
Definition at line 898 of file mips-linux-tdep.c.
struct tramp_frame mips_linux_o32_rt_sigframe [static] |
{ SIGTRAMP_FRAME, 4, { { MIPS_INST_LI_V0_RT_SIGRETURN, -1 }, { MIPS_INST_SYSCALL, -1 }, { TRAMP_SENTINEL_INSN, -1 } }, mips_linux_o32_sigframe_init }
Definition at line 877 of file mips-linux-tdep.c.
struct tramp_frame mips_linux_o32_sigframe [static] |
{ SIGTRAMP_FRAME, 4, { { MIPS_INST_LI_V0_SIGRETURN, -1 }, { MIPS_INST_SYSCALL, -1 }, { TRAMP_SENTINEL_INSN, -1 } }, mips_linux_o32_sigframe_init }
Definition at line 866 of file mips-linux-tdep.c.
struct target_so_ops mips_svr4_so_ops [static] |
Definition at line 46 of file mips-linux-tdep.c.
Referenced by mips_linux_init_abi().