GDB (xrefs)

Classes | Macros | Enumerations | Functions | Variables
/tmp/gdb-8.1/gdb/mips-tdep.c File Reference
`#include "defs.h"`
`#include "frame.h"`
`#include "inferior.h"`
`#include "symtab.h"`
`#include "value.h"`
`#include "gdbcmd.h"`
`#include "language.h"`
`#include "gdbcore.h"`
`#include "symfile.h"`
`#include "objfiles.h"`
`#include "gdbtypes.h"`
`#include "target.h"`
`#include "arch-utils.h"`
`#include "regcache.h"`
`#include "osabi.h"`
`#include "mips-tdep.h"`
`#include "block.h"`
`#include "reggroups.h"`
`#include "opcode/mips.h"`
`#include "elf/mips.h"`
`#include "elf-bfd.h"`
`#include "symcat.h"`
`#include "sim-regno.h"`
`#include "dis-asm.h"`
`#include "disasm.h"`
`#include "frame-unwind.h"`
`#include "frame-base.h"`
`#include "trad-frame.h"`
`#include "infcall.h"`
`#include "remote.h"`
`#include "target-descriptions.h"`
`#include "dwarf2-frame.h"`
`#include "user-regs.h"`
`#include "valprint.h"`
`#include "ax.h"`
`#include "target-float.h"`
`#include <algorithm>`

Go to the source code of this file.

## Classes
struct | register_alias
struct | upk_mips16
struct | mips_frame_cache
struct | mips_objfile_private

## Macros
#define | ST0_FR (1 << 26)
#define | R(n) { "r" #n, n }
#define | R(n) { #n, n }
#define | MIPS_DEFAULT_FPU_TYPE MIPS_FPU_DOUBLE
#define | PROPERTY_GP32 "internal: transfers-32bit-registers"
#define | PROPERTY_GP64 "internal: transfers-64bit-registers"
#define | MIPS_EABI(gdbarch)
#define | MIPS_LAST_FP_ARG_REGNUM(gdbarch) (gdbarch_tdep (gdbarch)->mips_last_fp_arg_regnum)
#define | MIPS_LAST_ARG_REGNUM(gdbarch) (gdbarch_tdep (gdbarch)->mips_last_arg_regnum)
#define | MIPS_FPU_TYPE(gdbarch) (gdbarch_tdep (gdbarch)->mips_fpu_type)
#define | MAX_MIPS_ABI_REGSIZE 8
#define | VM_MIN_ADDRESS (CORE_ADDR)0x400000
#define | mips32_op(x) (x >> 26)
#define | itype_op(x) (x >> 26)
#define | itype_rs(x) ((x >> 21) & 0x1f)
#define | itype_rt(x) ((x >> 16) & 0x1f)
#define | itype_immediate(x) (x & 0xffff)
#define | jtype_op(x) (x >> 26)
#define | jtype_target(x) (x & 0x03ffffff)
#define | rtype_op(x) (x >> 26)
#define | rtype_rs(x) ((x >> 21) & 0x1f)
#define | rtype_rt(x) ((x >> 16) & 0x1f)
#define | rtype_rd(x) ((x >> 11) & 0x1f)
#define | rtype_shamt(x) ((x >> 6) & 0x1f)
#define | rtype_funct(x) (x & 0x3f)
#define | micromips_op(x) ((x) >> 10)
#define | b0s4_imm(x) ((x) & 0xf)
#define | b0s5_imm(x) ((x) & 0x1f)
#define | b0s5_reg(x) ((x) & 0x1f)
#define | b0s7_imm(x) ((x) & 0x7f)
#define | b0s10_imm(x) ((x) & 0x3ff)
#define | b1s4_imm(x) (((x) >> 1) & 0xf)
#define | b1s9_imm(x) (((x) >> 1) & 0x1ff)
#define | b2s3_cc(x) (((x) >> 2) & 0x7)
#define | b4s2_regl(x) (((x) >> 4) & 0x3)
#define | b5s5_op(x) (((x) >> 5) & 0x1f)
#define | b5s5_reg(x) (((x) >> 5) & 0x1f)
#define | b6s4_op(x) (((x) >> 6) & 0xf)
#define | b7s3_reg(x) (((x) >> 7) & 0x7)
#define | b0s6_op(x) ((x) & 0x3f)
#define | b0s11_op(x) ((x) & 0x7ff)
#define | b0s12_imm(x) ((x) & 0xfff)
#define | b0s16_imm(x) ((x) & 0xffff)
#define | b0s26_imm(x) ((x) & 0x3ffffff)
#define | b6s10_ext(x) (((x) >> 6) & 0x3ff)
#define | b11s5_reg(x) (((x) >> 11) & 0x1f)
#define | b12s4_op(x) (((x) >> 12) & 0xf)
#define | LL_OPCODE 0x30
#define | LLD_OPCODE 0x34
#define | SC_OPCODE 0x38
#define | SCD_OPCODE 0x3c

## Enumerations
enum | { MIPS_FPU_SINGLE_REGSIZE = 4, MIPS_FPU_DOUBLE_REGSIZE = 8 }
enum | { MIPS32_REGSIZE = 4, MIPS64_REGSIZE = 8 }
enum | mips_breakpoint_kind { MIPS_BP_KIND_MIPS16 = 2, MIPS_BP_KIND_MICROMIPS16 = 3, MIPS_BP_KIND_MIPS32 = 4, MIPS_BP_KIND_MICROMIPS32 = 5 }
enum | { NUM_MIPS_PROCESSOR_REGS = (90 - 32) }
enum | mips16_inst_fmts { itype, ritype, rrtype, rritype, rrrtype, rriatype, shifttype, i8type, i8movtype, i8mov32rtype, i64type, ri64type, jalxtype, exiItype, extRitype, extRRItype, extRRIAtype, EXTshifttype, extI8type, extI64type, extRi64type, extshift64type }
enum | mips_fval_reg { mips_fval_fpr, mips_fval_gpr, mips_fval_both }

## Functions
static struct type * | mips_register_type (struct gdbarch *gdbarch, int regnum)
static int | mips32_instruction_has_delay_slot (struct gdbarch *gdbarch, ULONGEST inst)
static int | micromips_instruction_has_delay_slot (ULONGEST insn, int mustbe32)
static int | mips16_instruction_has_delay_slot (unsigned short inst, int mustbe32)
static int | mips32_insn_at_pc_has_delay_slot (struct gdbarch *gdbarch, CORE_ADDR addr)
static int | micromips_insn_at_pc_has_delay_slot (struct gdbarch *gdbarch, CORE_ADDR addr, int mustbe32)
static int | mips16_insn_at_pc_has_delay_slot (struct gdbarch *gdbarch, CORE_ADDR addr, int mustbe32)
static void | mips_print_float_info (struct gdbarch *, struct ui_file *, struct frame_info *, const char *)
const struct mips_regnum * | mips_regnum (struct gdbarch *gdbarch)
static int | mips_fpa0_regnum (struct gdbarch *gdbarch)
static int | mips_float_register_p (struct gdbarch *gdbarch, int regnum)
enum mips_abi | mips_abi (struct gdbarch *gdbarch)
int | mips_isa_regsize (struct gdbarch *gdbarch)
unsigned int | mips_abi_regsize (struct gdbarch *gdbarch)
static int | is_mips16_isa (struct gdbarch *gdbarch)
static int | is_micromips_isa (struct gdbarch *gdbarch)
static int | is_compact_addr (CORE_ADDR addr)
static int | is_mips_addr (CORE_ADDR addr)
static int | is_mips16_addr (struct gdbarch *gdbarch, CORE_ADDR addr)
static int | is_micromips_addr (struct gdbarch *gdbarch, CORE_ADDR addr)
static CORE_ADDR | unmake_compact_addr (CORE_ADDR addr)
static CORE_ADDR | make_compact_addr (CORE_ADDR addr)
CORE_ADDR | mips_unmake_compact_addr (CORE_ADDR addr)
static void | mips_elf_make_msymbol_special (asymbol *sym, struct minimal_symbol *msym)
static int | msymbol_is_mips (struct minimal_symbol *msym)
static int | msymbol_is_mips16 (struct minimal_symbol *msym)
static int | msymbol_is_micromips (struct minimal_symbol *msym)
static void | mips_make_symbol_special (struct symbol *sym, struct objfile *objfile)
static void | mips_xfer_register (struct gdbarch *gdbarch, struct regcache *regcache, int reg_num, int length, enum bfd_endian endian, gdb_byte *in, const gdb_byte *out, int buf_offset)
static int | mips2_fp_compat (struct frame_info *frame)
static CORE_ADDR | heuristic_proc_start (struct gdbarch *, CORE_ADDR)
static const char * | mips_register_name (struct gdbarch *gdbarch, int regno)
static int | mips_register_reggroup_p (struct gdbarch *gdbarch, int regnum, struct reggroup *reggroup)
static int | mips_tdesc_register_reggroup_p (struct gdbarch *gdbarch, int regnum, struct reggroup *reggroup)
static enum register_status | mips_pseudo_register_read (struct gdbarch *gdbarch, struct regcache *regcache, int cookednum, gdb_byte *buf)
static void | mips_pseudo_register_write (struct gdbarch *gdbarch, struct regcache *regcache, int cookednum, const gdb_byte *buf)
static int | mips_ax_pseudo_register_collect (struct gdbarch *gdbarch, struct agent_expr *ax, int reg)
static int | mips_ax_pseudo_register_push_stack (struct gdbarch *gdbarch, struct agent_expr *ax, int reg)
static void | set_mips64_transfers_32bit_regs (const char *args, int from_tty, struct cmd_list_element *c)
static int | mips_convert_register_float_case_p (struct gdbarch *gdbarch, int regnum, struct type *type)
static int | mips_convert_register_gpreg_case_p (struct gdbarch *gdbarch, int regnum, struct type *type)
static int | mips_convert_register_p (struct gdbarch *gdbarch, int regnum, struct type *type)
static int | mips_register_to_value (struct frame_info *frame, int regnum, struct type *type, gdb_byte *to, int *optimizedp, int *unavailablep)
static void | mips_value_to_register (struct frame_info *frame, int regnum, struct type *type, const gdb_byte *from)
static struct type * | mips_pseudo_register_type (struct gdbarch *gdbarch, int regnum)
static int | mips_mask_address_p (struct gdbarch_tdep *tdep)
static void | show_mask_address (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
int | mips_pc_is_mips (CORE_ADDR memaddr)
int | mips_pc_is_mips16 (struct gdbarch *gdbarch, CORE_ADDR memaddr)
int | mips_pc_is_micromips (struct gdbarch *gdbarch, CORE_ADDR memaddr)
static enum mips_isa | mips_pc_isa (struct gdbarch *gdbarch, CORE_ADDR memaddr)
static CORE_ADDR | mips_adjust_dwarf2_addr (CORE_ADDR pc)
static CORE_ADDR | mips_adjust_dwarf2_line (CORE_ADDR addr, int rel)
static int | mips_in_frame_stub (CORE_ADDR pc)
static CORE_ADDR | mips_read_pc (struct regcache *regcache)
static CORE_ADDR | mips_unwind_pc (struct gdbarch *gdbarch, struct frame_info *next_frame)
static CORE_ADDR | mips_unwind_sp (struct gdbarch *gdbarch, struct frame_info *next_frame)
static struct frame_id | mips_dummy_id (struct gdbarch *gdbarch, struct frame_info *this_frame)
void | mips_write_pc (struct regcache *regcache, CORE_ADDR pc)
static ULONGEST | mips_fetch_instruction (struct gdbarch *gdbarch, enum mips_isa isa, CORE_ADDR addr, int *errp)
static int | mips_insn_size (enum mips_isa isa, ULONGEST insn)
static LONGEST | mips32_relative_offset (ULONGEST inst)
static CORE_ADDR | mips32_bc1_pc (struct gdbarch *gdbarch, struct regcache *regcache, ULONGEST inst, CORE_ADDR pc, int count)
static int | is_octeon (struct gdbarch *gdbarch)
static int | is_octeon_bbit_op (int op, struct gdbarch *gdbarch)
static CORE_ADDR | mips32_next_pc (struct regcache *regcache, CORE_ADDR pc)
static LONGEST | micromips_relative_offset7 (ULONGEST insn)
static LONGEST | micromips_relative_offset10 (ULONGEST insn)
static LONGEST | micromips_relative_offset16 (ULONGEST insn)
static int | micromips_pc_insn_size (struct gdbarch *gdbarch, CORE_ADDR pc)
static CORE_ADDR | micromips_bc1_pc (struct gdbarch *gdbarch, struct regcache *regcache, ULONGEST insn, CORE_ADDR pc, int count)
static CORE_ADDR | micromips_next_pc (struct regcache *regcache, CORE_ADDR pc)
static CORE_ADDR | extended_offset (unsigned int extension)
static unsigned int | fetch_mips_16 (struct gdbarch *gdbarch, CORE_ADDR pc)
static void | unpack_mips16 (struct gdbarch *gdbarch, CORE_ADDR pc, unsigned int extension, unsigned int inst, enum mips16_inst_fmts insn_format, struct upk_mips16 *upk)
static CORE_ADDR | add_offset_16 (CORE_ADDR pc, int offset)
static CORE_ADDR | extended_mips16_next_pc (regcache *regcache, CORE_ADDR pc, unsigned int extension, unsigned int insn)
static CORE_ADDR | mips16_next_pc (struct regcache *regcache, CORE_ADDR pc)
static CORE_ADDR | mips_next_pc (struct regcache *regcache, CORE_ADDR pc)
static int | mips16_instruction_is_compact_branch (unsigned short insn)
static int | micromips_instruction_is_compact_branch (unsigned short insn)
static void | set_reg_offset (struct gdbarch *gdbarch, struct mips_frame_cache *this_cache, int regnum, CORE_ADDR offset)
static int | mips16_get_imm (unsigned short prev_inst, unsigned short inst, int nbits, int scale, int is_signed)
static CORE_ADDR | mips16_scan_prologue (struct gdbarch *gdbarch, CORE_ADDR start_pc, CORE_ADDR limit_pc, struct frame_info *this_frame, struct mips_frame_cache *this_cache)
static struct mips_frame_cache * | mips_insn16_frame_cache (struct frame_info *this_frame, void **this_cache)
static void | mips_insn16_frame_this_id (struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
static struct value * | mips_insn16_frame_prev_register (struct frame_info *this_frame, void **this_cache, int regnum)
static int | mips_insn16_frame_sniffer (const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
static CORE_ADDR | mips_insn16_frame_base_address (struct frame_info *this_frame, void **this_cache)
static const struct frame_base * | mips_insn16_frame_base_sniffer (struct frame_info *this_frame)
static int | micromips_decode_imm9 (int imm)
static CORE_ADDR | micromips_scan_prologue (struct gdbarch *gdbarch, CORE_ADDR start_pc, CORE_ADDR limit_pc, struct frame_info *this_frame, struct mips_frame_cache *this_cache)
static struct mips_frame_cache * | mips_micro_frame_cache (struct frame_info *this_frame, void **this_cache)
static void | mips_micro_frame_this_id (struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
static struct value * | mips_micro_frame_prev_register (struct frame_info *this_frame, void **this_cache, int regnum)
static int | mips_micro_frame_sniffer (const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
static CORE_ADDR | mips_micro_frame_base_address (struct frame_info *this_frame, void **this_cache)
static const struct frame_base * | mips_micro_frame_base_sniffer (struct frame_info *this_frame)
static void | reset_saved_regs (struct gdbarch *gdbarch, struct mips_frame_cache *this_cache)
static CORE_ADDR | mips32_scan_prologue (struct gdbarch *gdbarch, CORE_ADDR start_pc, CORE_ADDR limit_pc, struct frame_info *this_frame, struct mips_frame_cache *this_cache)
static struct mips_frame_cache * | mips_insn32_frame_cache (struct frame_info *this_frame, void **this_cache)
static void | mips_insn32_frame_this_id (struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
static struct value * | mips_insn32_frame_prev_register (struct frame_info *this_frame, void **this_cache, int regnum)
static int | mips_insn32_frame_sniffer (const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
static CORE_ADDR | mips_insn32_frame_base_address (struct frame_info *this_frame, void **this_cache)
static const struct frame_base * | mips_insn32_frame_base_sniffer (struct frame_info *this_frame)
static struct trad_frame_cache * | mips_stub_frame_cache (struct frame_info *this_frame, void **this_cache)
static void | mips_stub_frame_this_id (struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
static struct value * | mips_stub_frame_prev_register (struct frame_info *this_frame, void **this_cache, int regnum)
static int | mips_stub_frame_sniffer (const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
static CORE_ADDR | mips_stub_frame_base_address (struct frame_info *this_frame, void **this_cache)
static const struct frame_base * | mips_stub_frame_base_sniffer (struct frame_info *this_frame)
static CORE_ADDR | mips_addr_bits_remove (struct gdbarch *gdbarch, CORE_ADDR addr)
static std::vector< CORE_ADDR > | mips_deal_with_atomic_sequence (struct gdbarch *gdbarch, CORE_ADDR pc)
static std::vector< CORE_ADDR > | micromips_deal_with_atomic_sequence (struct gdbarch *gdbarch, CORE_ADDR pc)
static std::vector< CORE_ADDR > | deal_with_atomic_sequence (struct gdbarch *gdbarch, CORE_ADDR pc)
std::vector< CORE_ADDR > | mips_software_single_step (struct regcache *regcache)
static int | mips_about_to_return (struct gdbarch *gdbarch, CORE_ADDR pc)
static int | fp_register_arg_p (struct gdbarch *gdbarch, enum type_code typecode, struct type *arg_type)
static int | mips_type_needs_double_align (struct type *type)
static CORE_ADDR | mips_frame_align (struct gdbarch *gdbarch, CORE_ADDR addr)
static CORE_ADDR | mips_push_dummy_code (struct gdbarch *gdbarch, CORE_ADDR sp, CORE_ADDR funaddr, struct value **args, int nargs, struct type *value_type, CORE_ADDR *real_pc, CORE_ADDR *bp_addr, struct regcache *regcache)
static CORE_ADDR | mips_eabi_push_dummy_call (struct gdbarch *gdbarch, struct value *function, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, struct value **args, CORE_ADDR sp, int struct_return, CORE_ADDR struct_addr)
static enum return_value_convention | mips_eabi_return_value (struct gdbarch *gdbarch, struct value *function, struct type *type, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf)
static int | mips_n32n64_fp_arg_chunk_p (struct gdbarch *gdbarch, struct type *arg_type, int offset)
static CORE_ADDR | mips_n32n64_push_dummy_call (struct gdbarch *gdbarch, struct value *function, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, struct value **args, CORE_ADDR sp, int struct_return, CORE_ADDR struct_addr)
static enum return_value_convention | mips_n32n64_return_value (struct gdbarch *gdbarch, struct value *function, struct type *type, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf)
static CORE_ADDR | mips_o32_push_dummy_call (struct gdbarch *gdbarch, struct value *function, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, struct value **args, CORE_ADDR sp, int struct_return, CORE_ADDR struct_addr)
static enum return_value_convention | mips_o32_return_value (struct gdbarch *gdbarch, struct value *function, struct type *type, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf)
static CORE_ADDR | mips_o64_push_dummy_call (struct gdbarch *gdbarch, struct value *function, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, struct value **args, CORE_ADDR sp, int struct_return, CORE_ADDR struct_addr)
static enum return_value_convention | mips_o64_return_value (struct gdbarch *gdbarch, struct value *function, struct type *type, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf)
static void | mips_read_fp_register_single (struct frame_info *frame, int regno, gdb_byte *rare_buffer)
static void | mips_read_fp_register_double (struct frame_info *frame, int regno, gdb_byte *rare_buffer)
static void | mips_print_fp_register (struct ui_file *file, struct frame_info *frame, int regnum)
static void | mips_print_register (struct ui_file *file, struct frame_info *frame, int regnum)
static void | print_fpu_flags (struct ui_file *file, int flags)
static int | print_fp_register_row (struct ui_file *file, struct frame_info *frame, int regnum)
static int | print_gp_register_row (struct ui_file *file, struct frame_info *frame, int start_regnum)
static void | mips_print_registers_info (struct gdbarch *gdbarch, struct ui_file *file, struct frame_info *frame, int regnum, int all)
static int | mips_single_step_through_delay (struct gdbarch *gdbarch, struct frame_info *frame)
static CORE_ADDR | mips_skip_prologue (struct gdbarch *gdbarch, CORE_ADDR pc)
static int | mips32_stack_frame_destroyed_p (struct gdbarch *gdbarch, CORE_ADDR pc)
static int | micromips_stack_frame_destroyed_p (struct gdbarch *gdbarch, CORE_ADDR pc)
static int | mips16_stack_frame_destroyed_p (struct gdbarch *gdbarch, CORE_ADDR pc)
static int | mips_stack_frame_destroyed_p (struct gdbarch *gdbarch, CORE_ADDR pc)
static void | show_mips_command (const char *args, int from_tty)
static void | set_mips_command (const char *args, int from_tty)
static void | show_mipsfpu_command (const char *args, int from_tty)
static void | set_mipsfpu_command (const char *args, int from_tty)
static void | set_mipsfpu_single_command (const char *args, int from_tty)
static void | set_mipsfpu_double_command (const char *args, int from_tty)
static void | set_mipsfpu_none_command (const char *args, int from_tty)
static void | set_mipsfpu_auto_command (const char *args, int from_tty)
static void | reinit_frame_cache_sfunc (const char *args, int from_tty, struct cmd_list_element *c)
static int | gdb_print_insn_mips (bfd_vma memaddr, struct disassemble_info *info)
static int | gdb_print_insn_mips_n32 (bfd_vma memaddr, struct disassemble_info *info)
static int | gdb_print_insn_mips_n64 (bfd_vma memaddr, struct disassemble_info *info)
static int | mips_breakpoint_kind_from_pc (struct gdbarch *gdbarch, CORE_ADDR *pcptr)
static const gdb_byte * | mips_sw_breakpoint_from_kind (struct gdbarch *gdbarch, int kind, int *size)
static CORE_ADDR | mips_segment_boundary (CORE_ADDR bpaddr)
static CORE_ADDR | mips_adjust_breakpoint_address (struct gdbarch *gdbarch, CORE_ADDR bpaddr)
static int | mips_is_stub_suffix (const char *suffix, int zero)
static int | mips_is_stub_mode (const char *mode)
static CORE_ADDR | mips_get_mips16_fn_stub_pc (struct frame_info *frame, CORE_ADDR pc)
static CORE_ADDR | mips_skip_mips16_trampoline_code (struct frame_info *frame, CORE_ADDR pc)
static int | mips_in_return_stub (struct gdbarch *gdbarch, CORE_ADDR pc, const char *name)
static CORE_ADDR | mips_skip_pic_trampoline_code (struct frame_info *frame, CORE_ADDR pc)
static CORE_ADDR | mips_skip_trampoline_code (struct frame_info *frame, CORE_ADDR pc)
static int | mips_stab_reg_to_regnum (struct gdbarch *gdbarch, int num)
static int | mips_dwarf_dwarf2_ecoff_reg_to_regnum (struct gdbarch *gdbarch, int num)
static int | mips_register_sim_regno (struct gdbarch *gdbarch, int regnum)
static CORE_ADDR | mips_integer_to_address (struct gdbarch *gdbarch, struct type *type, const gdb_byte *buf)
static void | mips_virtual_frame_pointer (struct gdbarch *gdbarch, CORE_ADDR pc, int *reg, LONGEST *offset)
static void | mips_find_abi_section (bfd *abfd, asection *sect, void *obj)
static void | mips_find_long_section (bfd *abfd, asection *sect, void *obj)
static enum mips_abi | global_mips_abi (void)
static enum mips_isa | global_mips_compression (void)
static void | mips_register_g_packet_guesses (struct gdbarch *gdbarch)
static struct value * | value_of_mips_user_reg (struct frame_info *frame, const void *baton)
static struct gdbarch * | mips_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
static void | mips_abi_update (const char *ignore_args, int from_tty, struct cmd_list_element *c)
static void | show_mips_abi (struct ui_file *file, int from_tty, struct cmd_list_element *ignored_cmd, const char *ignored_value)
static void | show_mips_compression (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
static const char * | mips_fpu_type_str (enum mips_fpu_type fpu_type)
static void | mips_dump_tdep (struct gdbarch *gdbarch, struct ui_file *file)
void | _initialize_mips_tdep (void)

## Variables
static const struct objfile_data * | mips_pdr_data
static const char * | mips_abi_string
static const char *const | mips_abi_strings []
static const char | mips_compression_mips16 [] = "mips16"
static const char | mips_compression_micromips [] = "micromips"
static const char *const | mips_compression_strings []
static const char * | mips_compression_string = mips_compression_mips16
const struct register_alias | mips_o32_aliases []
const struct register_alias | mips_n32_n64_aliases []
const struct register_alias | mips_register_aliases []
const struct register_alias | mips_numeric_register_aliases []
static int | mips_fpu_type_auto = 1
static enum mips_fpu_type | mips_fpu_type = MIPS_DEFAULT_FPU_TYPE
static unsigned int | mips_debug = 0
struct target_desc * | mips_tdesc_gp32
struct target_desc * | mips_tdesc_gp64
static struct cmd_list_element * | setmipscmdlist = NULL
static struct cmd_list_element * | showmipscmdlist = NULL
static const char * | mips_generic_reg_names [NUM_MIPS_PROCESSOR_REGS]
static const char * | mips_tx39_reg_names [NUM_MIPS_PROCESSOR_REGS]
static const char * | mips_linux_reg_names [NUM_MIPS_PROCESSOR_REGS]
static const signed char | mips_reg3_to_reg [8] = { 16, 17, 2, 3, 4, 5, 6, 7 }
static int | heuristic_fence_post = 0
static int | mips64_transfers_32bit_regs_p = 0
enum auto_boolean | mask_address_var = AUTO_BOOLEAN_AUTO
static const char | mips_str_mips16_call_stub [] = "__mips16_call_stub_"
static const char | mips_str_mips16_ret_stub [] = "__mips16_ret_"
static const char | mips_str_call_fp_stub [] = "__call_stub_fp_"
static const char | mips_str_call_stub [] = "__call_stub_"
static const char | mips_str_fn_stub [] = "__fn_stub_"
static const char | mips_str_pic [] = ".pic."
static const struct frame_unwind | mips_insn16_frame_unwind
static const struct frame_base | mips_insn16_frame_base
static const struct frame_unwind | mips_micro_frame_unwind
static const struct frame_base | mips_micro_frame_base
static const struct frame_unwind | mips_insn32_frame_unwind
static const struct frame_base | mips_insn32_frame_base
static const struct frame_unwind | mips_stub_frame_unwind
static const struct frame_base | mips_stub_frame_base

## Macro Definition Documentation

## ◆ b0s10_imm

#define b0s10_imm | ( |  | x | ) | ((x) & 0x3ff)

Definition at line 1492 of file mips-tdep.c.

Referenced by micromips_relative_offset10().

## ◆ b0s11_op

#define b0s11_op | ( |  | x | ) | ((x) & 0x7ff)

Definition at line 1505 of file mips-tdep.c.

Referenced by micromips_scan_prologue().

## ◆ b0s12_imm

#define b0s12_imm | ( |  | x | ) | ((x) & 0xfff)

Definition at line 1506 of file mips-tdep.c.

Referenced by micromips_scan_prologue().

## ◆ b0s16_imm

#define b0s16_imm | ( |  | x | ) | ((x) & 0xffff)

Definition at line 1507 of file mips-tdep.c.

Referenced by heuristic_proc_start(), micromips_relative_offset16(), micromips_scan_prologue(), and micromips_stack_frame_destroyed_p().

## ◆ b0s26_imm

#define b0s26_imm | ( |  | x | ) | ((x) & 0x3ffffff)

Definition at line 1508 of file mips-tdep.c.

Referenced by micromips_next_pc().

## ◆ b0s4_imm

#define b0s4_imm | ( |  | x | ) | ((x) & 0xf)

Definition at line 1488 of file mips-tdep.c.

Referenced by micromips_scan_prologue().

## ◆ b0s5_imm

#define b0s5_imm | ( |  | x | ) | ((x) & 0x1f)

Definition at line 1489 of file mips-tdep.c.

Referenced by micromips_scan_prologue().

## ◆ b0s5_reg

#define b0s5_reg | ( |  | x | ) | ((x) & 0x1f)

Definition at line 1490 of file mips-tdep.c.

Referenced by heuristic_proc_start(), micromips_next_pc(), micromips_scan_prologue(), and micromips_stack_frame_destroyed_p().

## ◆ b0s6_op

#define b0s6_op | ( |  | x | ) | ((x) & 0x3f)

Definition at line 1504 of file mips-tdep.c.

Referenced by micromips_deal_with_atomic_sequence(), micromips_instruction_has_delay_slot(), and micromips_next_pc().

## ◆ b0s7_imm

#define b0s7_imm | ( |  | x | ) | ((x) & 0x7f)

Definition at line 1491 of file mips-tdep.c.

Referenced by micromips_relative_offset7().

## ◆ b11s5_reg

#define b11s5_reg | ( |  | x | ) | (((x) >> 11) & 0x1f)

Definition at line 1510 of file mips-tdep.c.

Referenced by micromips_scan_prologue().

## ◆ b12s4_op

#define b12s4_op | ( |  | x | ) | (((x) >> 12) & 0xf)

Definition at line 1511 of file mips-tdep.c.

Referenced by micromips_deal_with_atomic_sequence(), and micromips_scan_prologue().

## ◆ b1s4_imm

#define b1s4_imm | ( |  | x | ) | (((x) >> 1) & 0xf)

Definition at line 1493 of file mips-tdep.c.

Referenced by heuristic_proc_start(), and micromips_scan_prologue().

## ◆ b1s9_imm

#define b1s9_imm | ( |  | x | ) | (((x) >> 1) & 0x1ff)

Definition at line 1494 of file mips-tdep.c.

Referenced by heuristic_proc_start(), micromips_scan_prologue(), and micromips_stack_frame_destroyed_p().

## ◆ b2s3_cc

#define b2s3_cc | ( |  | x | ) | (((x) >> 2) & 0x7)

Definition at line 1495 of file mips-tdep.c.

Referenced by micromips_bc1_pc().

## ◆ b4s2_regl

#define b4s2_regl | ( |  | x | ) | (((x) >> 4) & 0x3)

Definition at line 1496 of file mips-tdep.c.

Referenced by micromips_scan_prologue().

## ◆ b5s5_op

#define b5s5_op | ( |  | x | ) | (((x) >> 5) & 0x1f)

Definition at line 1497 of file mips-tdep.c.

Referenced by heuristic_proc_start(), micromips_bc1_pc(), micromips_deal_with_atomic_sequence(), micromips_instruction_has_delay_slot(), micromips_instruction_is_compact_branch(), micromips_next_pc(), micromips_scan_prologue(), and micromips_stack_frame_destroyed_p().

## ◆ b5s5_reg

#define b5s5_reg | ( |  | x | ) | (((x) >> 5) & 0x1f)

Definition at line 1498 of file mips-tdep.c.

Referenced by heuristic_proc_start(), micromips_next_pc(), micromips_scan_prologue(), and micromips_stack_frame_destroyed_p().

## ◆ b6s10_ext

#define b6s10_ext | ( |  | x | ) | (((x) >> 6) & 0x3ff)

Definition at line 1509 of file mips-tdep.c.

Referenced by micromips_deal_with_atomic_sequence(), micromips_instruction_has_delay_slot(), and micromips_next_pc().

## ◆ b6s4_op

#define b6s4_op | ( |  | x | ) | (((x) >> 6) & 0xf)

Definition at line 1499 of file mips-tdep.c.

Referenced by micromips_scan_prologue().

## ◆ b7s3_reg

#define b7s3_reg | ( |  | x | ) | (((x) >> 7) & 0x7)

Definition at line 1500 of file mips-tdep.c.

Referenced by micromips_next_pc().

## ◆ itype_immediate

#define itype_immediate | ( |  | x | ) | (x & 0xffff)

Definition at line 1471 of file mips-tdep.c.

Referenced by mips32_relative_offset(), and mips_get_mips16_fn_stub_pc().

## ◆ itype_op

#define itype_op | ( |  | x | ) | (x >> 26)

Definition at line 1468 of file mips-tdep.c.

Referenced by mips32_instruction_has_delay_slot(), mips32_next_pc(), mips_deal_with_atomic_sequence(), and mips_get_mips16_fn_stub_pc().

## ◆ itype_rs

#define itype_rs | ( |  | x | ) | ((x >> 21) & 0x1f)

Definition at line 1469 of file mips-tdep.c.

Referenced by mips32_instruction_has_delay_slot(), mips32_next_pc(), mips_deal_with_atomic_sequence(), and mips_get_mips16_fn_stub_pc().

## ◆ itype_rt

#define itype_rt | ( |  | x | ) | ((x >> 16) & 0x1f)

Definition at line 1470 of file mips-tdep.c.

Referenced by mips32_bc1_pc(), mips32_instruction_has_delay_slot(), mips32_next_pc(), mips_deal_with_atomic_sequence(), and mips_get_mips16_fn_stub_pc().

## ◆ jtype_op

#define jtype_op | ( |  | x | ) | (x >> 26)

Definition at line 1473 of file mips-tdep.c.

## ◆ jtype_target

#define jtype_target | ( |  | x | ) | (x & 0x03ffffff)

Definition at line 1474 of file mips-tdep.c.

Referenced by mips32_next_pc(), and mips_get_mips16_fn_stub_pc().

## ◆ LL_OPCODE

#define LL_OPCODE 0x30

Definition at line 3877 of file mips-tdep.c.

Referenced by mips_deal_with_atomic_sequence().

## ◆ LLD_OPCODE

#define LLD_OPCODE 0x34

Definition at line 3878 of file mips-tdep.c.

Referenced by mips_deal_with_atomic_sequence().

## ◆ MAX_MIPS_ABI_REGSIZE

#define MAX_MIPS_ABI_REGSIZE 8

Definition at line 275 of file mips-tdep.c.

Referenced by mips_eabi_push_dummy_call().

## ◆ micromips_op

#define micromips_op | ( |  | x | ) | ((x) >> 10)

Definition at line 1484 of file mips-tdep.c.

Referenced by heuristic_proc_start(), micromips_deal_with_atomic_sequence(), micromips_instruction_has_delay_slot(), micromips_instruction_is_compact_branch(), micromips_next_pc(), micromips_scan_prologue(), micromips_stack_frame_destroyed_p(), and mips_insn_size().

## ◆ mips32_op

#define mips32_op | ( |  | x | ) | (x >> 26)

Definition at line 1467 of file mips-tdep.c.

## ◆ MIPS_DEFAULT_FPU_TYPE

#define MIPS_DEFAULT_FPU_TYPE MIPS_FPU_DOUBLE

Definition at line 202 of file mips-tdep.c.

Referenced by mips_dump_tdep().

## ◆ MIPS_EABI

#define MIPS_EABI | ( |  | gdbarch | ) |

Value:
(gdbarch_tdep (gdbarch)->mips_abi \
== MIPS_ABI_EABI32 \
|| gdbarch_tdep (gdbarch)->mips_abi == MIPS_ABI_EABI64)
gdbarch
Definition: gdbarch.c:127
MIPS_ABI_EABI64
Definition: mips-tdep.h:36
gdbarch_tdep
struct gdbarch_tdep * gdbarch_tdep(struct gdbarch *gdbarch)
Definition: gdbarch.c:1491
MIPS_ABI_EABI32
Definition: mips-tdep.h:35
gdbarch_tdep::mips_abi
enum mips_abi mips_abi
Definition: mips-tdep.h:92

Definition at line 241 of file mips-tdep.c.

Referenced by fp_register_arg_p(), and mips_dump_tdep().

## ◆ MIPS_FPU_TYPE

#define MIPS_FPU_TYPE | ( |  | gdbarch | ) | (gdbarch_tdep (gdbarch)->mips_fpu_type)

Definition at line 251 of file mips-tdep.c.

Referenced by fp_register_arg_p(), mips_dump_tdep(), mips_gdbarch_init(), mips_n32n64_fp_arg_chunk_p(), mips_print_float_info(), and show_mipsfpu_command().

## ◆ MIPS_LAST_ARG_REGNUM

#define MIPS_LAST_ARG_REGNUM | ( |  | gdbarch | ) | (gdbarch_tdep (gdbarch)->mips_last_arg_regnum)

Definition at line 248 of file mips-tdep.c.

Referenced by mips_eabi_push_dummy_call(), mips_n32n64_push_dummy_call(), mips_o32_push_dummy_call(), and mips_o64_push_dummy_call().

## ◆ MIPS_LAST_FP_ARG_REGNUM

#define MIPS_LAST_FP_ARG_REGNUM | ( |  | gdbarch | ) | (gdbarch_tdep (gdbarch)->mips_last_fp_arg_regnum)

Definition at line 245 of file mips-tdep.c.

Referenced by mips_eabi_push_dummy_call(), mips_o32_push_dummy_call(), and mips_o64_push_dummy_call().

## ◆ PROPERTY_GP32

#define PROPERTY_GP32 "internal: transfers-32bit-registers"

Definition at line 211 of file mips-tdep.c.

Referenced by _initialize_mips_tdep(), and mips_gdbarch_init().

## ◆ PROPERTY_GP64

#define PROPERTY_GP64 "internal: transfers-64bit-registers"

Definition at line 212 of file mips-tdep.c.

Referenced by _initialize_mips_tdep(), and mips_gdbarch_init().

## ◆ R [1/2]

#define R | ( |  | n | ) | { "r" #n, n }

## ◆ R [2/2]

#define R | ( |  | n | ) | { #n, n }

## ◆ rtype_funct

#define rtype_funct | ( |  | x | ) | (x & 0x3f)

Definition at line 1481 of file mips-tdep.c.

Referenced by mips32_instruction_has_delay_slot(), mips32_next_pc(), mips_deal_with_atomic_sequence(), and mips_get_mips16_fn_stub_pc().

## ◆ rtype_op

#define rtype_op | ( |  | x | ) | (x >> 26)

Definition at line 1476 of file mips-tdep.c.

## ◆ rtype_rd

#define rtype_rd | ( |  | x | ) | ((x >> 11) & 0x1f)

Definition at line 1479 of file mips-tdep.c.

Referenced by mips_get_mips16_fn_stub_pc().

## ◆ rtype_rs

#define rtype_rs | ( |  | x | ) | ((x >> 21) & 0x1f)

Definition at line 1477 of file mips-tdep.c.

Referenced by mips32_next_pc(), and mips_get_mips16_fn_stub_pc().

## ◆ rtype_rt

#define rtype_rt | ( |  | x | ) | ((x >> 16) & 0x1f)

Definition at line 1478 of file mips-tdep.c.

Referenced by mips_get_mips16_fn_stub_pc().

## ◆ rtype_shamt

#define rtype_shamt | ( |  | x | ) | ((x >> 6) & 0x1f)

Definition at line 1480 of file mips-tdep.c.

## ◆ SC_OPCODE

#define SC_OPCODE 0x38

Definition at line 3879 of file mips-tdep.c.

Referenced by mips_deal_with_atomic_sequence().

## ◆ SCD_OPCODE

#define SCD_OPCODE 0x3c

Definition at line 3880 of file mips-tdep.c.

Referenced by mips_deal_with_atomic_sequence().

## ◆ ST0_FR

#define ST0_FR (1 << 26)

Definition at line 83 of file mips-tdep.c.

Referenced by mips2_fp_compat().

## ◆ VM_MIN_ADDRESS

#define VM_MIN_ADDRESS (CORE_ADDR)0x400000

Definition at line 555 of file mips-tdep.c.

Referenced by gnu_find_memory_regions(), and heuristic_proc_start().

## Enumeration Type Documentation

## ◆ anonymous enum

anonymous enum

Enumerator
MIPS_FPU_SINGLE_REGSIZE |
MIPS_FPU_DOUBLE_REGSIZE |

Definition at line 87 of file mips-tdep.c.

## ◆ anonymous enum

anonymous enum

Enumerator
MIPS32_REGSIZE |
MIPS64_REGSIZE |

Definition at line 93 of file mips-tdep.c.

## ◆ anonymous enum

anonymous enum

Enumerator
NUM_MIPS_PROCESSOR_REGS |

Definition at line 568 of file mips-tdep.c.

## ◆ mips16_inst_fmts

enum mips16_inst_fmts

Enumerator
itype |
ritype |
rrtype |
rritype |
rrrtype |
rriatype |
shifttype |
i8type |
i8movtype |
i8mov32rtype |
i64type |
ri64type |
jalxtype |
exiItype |
extRitype |
extRRItype |
extRRIAtype |
EXTshifttype |
extI8type |
extI64type |
extRi64type |
extshift64type |

Definition at line 2074 of file mips-tdep.c.

## ◆ mips_breakpoint_kind

enum mips_breakpoint_kind

Enumerator
MIPS_BP_KIND_MIPS16 |
MIPS_BP_KIND_MICROMIPS16 |
MIPS_BP_KIND_MIPS32 |
MIPS_BP_KIND_MICROMIPS32 |

Definition at line 114 of file mips-tdep.c.

## ◆ mips_fval_reg

enum mips_fval_reg

Enumerator
mips_fval_fpr |
mips_fval_gpr |
mips_fval_both |

Definition at line 5307 of file mips-tdep.c.

## Function Documentation

## ◆ _initialize_mips_tdep()

void _initialize_mips_tdep | ( | void |  | ) |

Definition at line 8965 of file mips-tdep.c.

References _, add_alias_cmd(), add_cmd(), add_prefix_cmd(), add_setshow_auto_boolean_cmd(), add_setshow_boolean_cmd(), add_setshow_enum_cmd(), add_setshow_zinteger_cmd(), add_setshow_zuinteger_cmd(), allocate_target_description(), class_maintenance, class_obscure, class_support, gdbarch_register(), heuristic_fence_post, internal_error(), mask_address_var, mips64_transfers_32bit_regs_p, MIPS_ABI_LAST, mips_abi_string, mips_abi_strings, MIPS_ABI_UNKNOWN, mips_abi_update(), mips_compression_string, mips_compression_strings, mips_debug, mips_dump_tdep(), mips_gdbarch_init(), mips_pdr_data, mips_tdesc_gp32, mips_tdesc_gp64, no_class, PROPERTY_GP32, PROPERTY_GP64, reinit_frame_cache_sfunc(), set_mips64_transfers_32bit_regs(), set_mips_command(), set_mipsfpu_auto_command(), set_mipsfpu_command(), set_mipsfpu_double_command(), set_mipsfpu_none_command(), set_mipsfpu_single_command(), set_tdesc_property(), setdebuglist, setlist, setmipscmdlist, show_mask_address(), show_mips_abi(), show_mips_command(), show_mips_compression(), show_mipsfpu_command(), showdebuglist, showlist, and showmipscmdlist.

## ◆ add_offset_16()

static CORE_ADDR add_offset_16 | ( | CORE_ADDR | pc,
|  | int | offset
| ) |  |
| static

Definition at line 2221 of file mips-tdep.c.

References offset.

Referenced by extended_mips16_next_pc().

## ◆ deal_with_atomic_sequence()

static std::vector<CORE_ADDR> deal_with_atomic_sequence | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 4139 of file mips-tdep.c.

References micromips_deal_with_atomic_sequence(), mips_deal_with_atomic_sequence(), mips_pc_is_micromips(), mips_pc_is_mips(), and gdbarch_tdep::pc.

Referenced by mips_software_single_step().

## ◆ extended_mips16_next_pc()

static CORE_ADDR extended_mips16_next_pc | ( | regcache * | regcache,
|  | CORE_ADDR | pc,
|  | unsigned int | extension,
|  | unsigned int | insn
| ) |  |
| static

Definition at line 2227 of file mips-tdep.c.

References add_offset_16(), regcache::arch(), fetch_mips_16(), i8type, itype, jalxtype, mips_reg3_to_reg, upk_mips16::offset, regcache_raw_get_signed(), upk_mips16::regx, upk_mips16::regy, ritype, and unpack_mips16().

Referenced by mips16_next_pc().

## ◆ extended_offset()

static CORE_ADDR extended_offset | ( | unsigned int | extension | ) |
| static

Definition at line 2113 of file mips-tdep.c.

Referenced by unpack_mips16().

## ◆ fetch_mips_16()

static unsigned int fetch_mips_16 | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 2134 of file mips-tdep.c.

References extract_unsigned_integer(), gdbarch_byte_order(), target_read_memory(), and unmake_compact_addr().

Referenced by extended_mips16_next_pc(), and mips16_next_pc().

## ◆ fp_register_arg_p()

static int fp_register_arg_p | ( | struct gdbarch * | gdbarch,
|  | enum type_code | typecode,
|  | struct type * | arg_type
| ) |  |
| static

Definition at line 4377 of file mips-tdep.c.

References check_typedef(), MIPS_EABI, MIPS_FPU_NONE, MIPS_FPU_TYPE, TYPE_CODE, TYPE_CODE_FLT, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_FIELD_TYPE, and TYPE_NFIELDS.

Referenced by mips_eabi_push_dummy_call(), mips_n32n64_push_dummy_call(), mips_o32_push_dummy_call(), mips_o64_push_dummy_call(), and mips_o64_return_value().

## ◆ gdb_print_insn_mips()

static int gdb_print_insn_mips | ( | bfd_vma | memaddr,
|  | struct disassemble_info * | info
| ) |  |
| static

Definition at line 6976 of file mips-tdep.c.

References gdb_disassembler::arch(), default_print_insn(), gdbarch::disassembler_options, mips_pc_is_micromips(), and mips_pc_is_mips16().

Referenced by gdb_print_insn_mips_n32(), gdb_print_insn_mips_n64(), and mips_gdbarch_init().

## ◆ gdb_print_insn_mips_n32()

static int gdb_print_insn_mips_n32 | ( | bfd_vma | memaddr,
|  | struct disassemble_info * | info
| ) |  |
| static

Definition at line 7008 of file mips-tdep.c.

References gdb_print_insn_mips().

Referenced by mips_gdbarch_init().

## ◆ gdb_print_insn_mips_n64()

static int gdb_print_insn_mips_n64 | ( | bfd_vma | memaddr,
|  | struct disassemble_info * | info
| ) |  |
| static

Definition at line 7019 of file mips-tdep.c.

References gdb_print_insn_mips().

Referenced by mips_gdbarch_init().

## ◆ global_mips_abi()

static enum mips_abi global_mips_abi | ( | void |  | ) |
| static

Definition at line 8018 of file mips-tdep.c.

References _, internal_error(), mips_abi_string, and mips_abi_strings.

Referenced by mips_gdbarch_init(), and show_mips_abi().

## ◆ global_mips_compression()

static enum mips_isa global_mips_compression | ( | void |  | ) |
| static

Definition at line 8035 of file mips-tdep.c.

References _, internal_error(), mips_compression_string, and mips_compression_strings.

Referenced by mips_gdbarch_init().

## ◆ heuristic_proc_start()

static CORE_ADDR heuristic_proc_start | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 4195 of file mips-tdep.c.

References _, b0s16_imm, b0s5_reg, b1s4_imm, b1s9_imm, b5s5_op, b5s5_reg, current_inferior(), gdbarch_addr_bits_remove(), heuristic_fence_post, arm-linux::inf, ISA_MICROMIPS, ISA_MIPS16, micromips_decode_imm9(), micromips_op, mips_about_to_return(), mips_fetch_instruction(), MIPS_INSN16_SIZE, MIPS_INSN32_SIZE, mips_pc_is_micromips(), mips_pc_is_mips(), mips_pc_is_mips16(), MIPS_SP_REGNUM, NO_STOP_QUIETLY, offset, paddress(), printf_filtered(), VM_MIN_ADDRESS, and warning().

Referenced by mips_insn16_frame_cache(), mips_insn32_frame_cache(), and mips_micro_frame_cache().

## ◆ is_compact_addr()

static int is_compact_addr | ( | CORE_ADDR | addr | ) |
| static

Definition at line 323 of file mips-tdep.c.

Referenced by is_micromips_addr(), is_mips16_addr(), and is_mips_addr().

## ◆ is_micromips_addr()

static int is_micromips_addr | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | addr
| ) |  |
| static

Definition at line 347 of file mips-tdep.c.

References is_compact_addr(), and is_micromips_isa().

Referenced by mips_pc_is_micromips(), and mips_pc_isa().

## ◆ is_micromips_isa()

static int is_micromips_isa | ( | struct gdbarch * | gdbarch | ) |
| static

Definition at line 315 of file mips-tdep.c.

References gdbarch_tdep(), ISA_MICROMIPS, and gdbarch_tdep::mips_isa.

Referenced by is_micromips_addr().

## ◆ is_mips16_addr()

static int is_mips16_addr | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | addr
| ) |  |
| static

Definition at line 339 of file mips-tdep.c.

References is_compact_addr(), and is_mips16_isa().

Referenced by mips_pc_is_mips16().

## ◆ is_mips16_isa()

static int is_mips16_isa | ( | struct gdbarch * | gdbarch | ) |
| static

Definition at line 307 of file mips-tdep.c.

References gdbarch_tdep(), ISA_MIPS16, and gdbarch_tdep::mips_isa.

Referenced by is_mips16_addr().

## ◆ is_mips_addr()

static int is_mips_addr | ( | CORE_ADDR | addr | ) |
| static

Definition at line 331 of file mips-tdep.c.

References is_compact_addr().

Referenced by mips_pc_is_mips(), and mips_pc_isa().

## ◆ is_octeon()

static int is_octeon | ( | struct gdbarch * | gdbarch | ) |
| static

Definition at line 1577 of file mips-tdep.c.

References gdbarch_bfd_arch_info().

Referenced by is_octeon_bbit_op().

## ◆ is_octeon_bbit_op()

static int is_octeon_bbit_op | ( | int | op,
|  | struct gdbarch * | gdbarch
| ) |  |
| static

Definition at line 1589 of file mips-tdep.c.

References is_octeon().

Referenced by mips32_instruction_has_delay_slot(), and mips32_next_pc().

## ◆ make_compact_addr()

static CORE_ADDR make_compact_addr | ( | CORE_ADDR | addr | ) |
| static

Definition at line 363 of file mips-tdep.c.

Referenced by mips_adjust_dwarf2_addr(), mips_pc_is_micromips(), mips_pc_is_mips(), mips_pc_is_mips16(), mips_pc_isa(), and mips_push_dummy_code().

## ◆ micromips_bc1_pc()

static CORE_ADDR micromips_bc1_pc | ( | struct gdbarch * | gdbarch,
|  | struct regcache * | regcache,
|  | ULONGEST | insn,
|  | CORE_ADDR | pc,
|  | int | count
| ) |  |
| static

Definition at line 1845 of file mips-tdep.c.

References b2s3_cc, b5s5_op, mips_regnum::fp_control_status, micromips_pc_insn_size(), micromips_relative_offset16(), mips_regnum(), gdbarch_tdep::pc, and regcache_raw_get_unsigned().

Referenced by micromips_next_pc().

## ◆ micromips_deal_with_atomic_sequence()

static std::vector<CORE_ADDR> micromips_deal_with_atomic_sequence | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 3983 of file mips-tdep.c.

References b0s6_op, b12s4_op, b5s5_op, b6s10_ext, is_branch(), ISA_MICROMIPS, loc, micromips_op, micromips_relative_offset16(), micromips_relative_offset7(), mips_fetch_instruction(), MIPS_INSN16_SIZE, mips_insn_size(), and gdbarch_tdep::pc.

Referenced by deal_with_atomic_sequence().

## ◆ micromips_decode_imm9()

static int micromips_decode_imm9 | ( | int | imm | ) |
| static

Definition at line 2920 of file mips-tdep.c.

Referenced by heuristic_proc_start(), micromips_scan_prologue(), and micromips_stack_frame_destroyed_p().

## ◆ micromips_insn_at_pc_has_delay_slot()

static int micromips_insn_at_pc_has_delay_slot | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | addr,
|  | int | mustbe32
| ) |  |
| static

Definition at line 7248 of file mips-tdep.c.

References ISA_MICROMIPS, micromips_instruction_has_delay_slot(), mips_fetch_instruction(), MIPS_INSN16_SIZE, mips_insn_size(), size, and status.

Referenced by mips_adjust_breakpoint_address(), and mips_single_step_through_delay().

## ◆ micromips_instruction_has_delay_slot()

static int micromips_instruction_has_delay_slot | ( | ULONGEST | insn,
|  | int | mustbe32
| ) |  |
| static

Definition at line 7189 of file mips-tdep.c.

References b0s6_op, b5s5_op, b6s10_ext, and micromips_op.

Referenced by micromips_insn_at_pc_has_delay_slot(), and micromips_scan_prologue().

## ◆ micromips_instruction_is_compact_branch()

static int micromips_instruction_is_compact_branch | ( | unsigned short | insn | ) |
| static

Definition at line 2382 of file mips-tdep.c.

References b5s5_op, and micromips_op.

Referenced by micromips_scan_prologue().

## ◆ micromips_next_pc()

static CORE_ADDR micromips_next_pc | ( | struct regcache * | regcache,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 1874 of file mips-tdep.c.

References regcache::arch(), b0s26_imm, b0s5_reg, b0s6_op, b5s5_op, b5s5_reg, b6s10_ext, b7s3_reg, mips_regnum::dspctl, ISA_MICROMIPS, micromips_bc1_pc(), micromips_op, micromips_pc_insn_size(), micromips_relative_offset10(), micromips_relative_offset16(), micromips_relative_offset7(), mips_fetch_instruction(), MIPS_INSN16_SIZE, mips_insn_size(), MIPS_RA_REGNUM, mips_reg3_to_reg, mips_regnum(), regcache_raw_get_signed(), and regcache_raw_get_unsigned().

Referenced by mips_next_pc().

## ◆ micromips_pc_insn_size()

static int micromips_pc_insn_size | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 1831 of file mips-tdep.c.

References ISA_MICROMIPS, mips_fetch_instruction(), mips_insn_size(), and gdbarch_tdep::pc.

Referenced by micromips_bc1_pc(), and micromips_next_pc().

## ◆ micromips_relative_offset10()

static LONGEST micromips_relative_offset10 | ( | ULONGEST | insn | ) |
| static

Definition at line 1814 of file mips-tdep.c.

References b0s10_imm.

Referenced by micromips_next_pc().

## ◆ micromips_relative_offset16()

static LONGEST micromips_relative_offset16 | ( | ULONGEST | insn | ) |
| static

Definition at line 1823 of file mips-tdep.c.

References b0s16_imm.

Referenced by micromips_bc1_pc(), micromips_deal_with_atomic_sequence(), and micromips_next_pc().

## ◆ micromips_relative_offset7()

static LONGEST micromips_relative_offset7 | ( | ULONGEST | insn | ) |
| static

Definition at line 1805 of file mips-tdep.c.

References b0s7_imm.

Referenced by micromips_deal_with_atomic_sequence(), and micromips_next_pc().

## ◆ micromips_scan_prologue()

static CORE_ADDR micromips_scan_prologue | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | start_pc,
|  | CORE_ADDR | limit_pc,
|  | struct frame_info * | this_frame,
|  | struct mips_frame_cache * | this_cache
| ) |  |
| static

Definition at line 2932 of file mips-tdep.c.

References b0s11_op, b0s12_imm, b0s16_imm, b0s4_imm, b0s5_imm, b0s5_reg, b11s5_reg, b12s4_op, b1s4_imm, b1s9_imm, b4s2_regl, b5s5_op, b5s5_reg, b6s4_op, mips_frame_cache::base, gdbarch_num_regs(), get_frame_register_signed(), ISA_MICROMIPS, loc, micromips_decode_imm9(), micromips_instruction_has_delay_slot(), micromips_instruction_is_compact_branch(), micromips_op, mips_fetch_instruction(), MIPS_INSN16_SIZE, mips_insn_size(), MIPS_RA_REGNUM, mips_regnum(), MIPS_SP_REGNUM, MIPS_T9_REGNUM, offset, mips_regnum::pc, mips_frame_cache::saved_regs, and set_reg_offset().

Referenced by mips_micro_frame_cache(), and mips_skip_prologue().

## ◆ micromips_stack_frame_destroyed_p()

static int micromips_stack_frame_destroyed_p | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 6704 of file mips-tdep.c.

References b0s16_imm, b0s5_reg, b1s9_imm, b5s5_op, b5s5_reg, find_pc_partial_function(), ISA_MICROMIPS, loc, micromips_decode_imm9(), micromips_op, mips_fetch_instruction(), MIPS_INSN16_SIZE, mips_insn_size(), MIPS_RA_REGNUM, MIPS_SP_REGNUM, and offset.

Referenced by mips_stack_frame_destroyed_p().

## ◆ mips16_get_imm()

static int mips16_get_imm | ( | unsigned short | prev_inst,
|  | unsigned short | inst,
|  | int | nbits,
|  | int | scale,
|  | int | is_signed
| ) |  |
| static

Definition at line 2437 of file mips-tdep.c.

References offset.

Referenced by mips16_scan_prologue().

## ◆ mips16_insn_at_pc_has_delay_slot()

static int mips16_insn_at_pc_has_delay_slot | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | addr,
|  | int | mustbe32
| ) |  |
| static

Definition at line 7288 of file mips-tdep.c.

References ISA_MIPS16, mips16_instruction_has_delay_slot(), mips_fetch_instruction(), and status.

Referenced by mips_adjust_breakpoint_address(), and mips_single_step_through_delay().

## ◆ mips16_instruction_has_delay_slot()

static int mips16_instruction_has_delay_slot | ( | unsigned short | inst,
|  | int | mustbe32
| ) |  |
| static

Definition at line 7276 of file mips-tdep.c.

Referenced by mips16_insn_at_pc_has_delay_slot(), and mips16_scan_prologue().

## ◆ mips16_instruction_is_compact_branch()

static int mips16_instruction_is_compact_branch | ( | unsigned short | insn | ) |
| static

Definition at line 2361 of file mips-tdep.c.

Referenced by mips16_scan_prologue().

## ◆ mips16_next_pc()

static CORE_ADDR mips16_next_pc | ( | struct regcache * | regcache,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 2332 of file mips-tdep.c.

References regcache::arch(), extended_mips16_next_pc(), and fetch_mips_16().

Referenced by mips_next_pc().

## ◆ mips16_scan_prologue()

static CORE_ADDR mips16_scan_prologue | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | start_pc,
|  | CORE_ADDR | limit_pc,
|  | struct frame_info * | this_frame,
|  | struct mips_frame_cache * | this_cache
| ) |  |
| static

Definition at line 2471 of file mips-tdep.c.

References _, mips_frame_cache::base, gdbarch_num_regs(), get_frame_register_signed(), ISA_MIPS16, mips16_get_imm(), mips16_instruction_has_delay_slot(), mips16_instruction_is_compact_branch(), MIPS_A0_REGNUM, mips_abi_regsize(), mips_fetch_instruction(), MIPS_INSN16_SIZE, MIPS_RA_REGNUM, mips_reg3_to_reg, mips_regnum(), MIPS_SP_REGNUM, offset, mips_regnum::pc, mips_frame_cache::saved_regs, set_reg_offset(), and warning().

Referenced by mips_insn16_frame_cache(), and mips_skip_prologue().

## ◆ mips16_stack_frame_destroyed_p()

static int mips16_stack_frame_destroyed_p | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 6800 of file mips-tdep.c.

References find_pc_partial_function(), ISA_MIPS16, mips_fetch_instruction(), and MIPS_INSN16_SIZE.

Referenced by mips_stack_frame_destroyed_p().

## ◆ mips2_fp_compat()

static int mips2_fp_compat | ( | struct frame_info * | frame | ) |
| static

Definition at line 534 of file mips-tdep.c.

References get_frame_arch(), get_frame_register_unsigned(), MIPS_PS_REGNUM, register_size(), and ST0_FR.

Referenced by mips_print_fp_register(), and mips_read_fp_register_double().

## ◆ mips32_bc1_pc()

static CORE_ADDR mips32_bc1_pc | ( | struct gdbarch * | gdbarch,
|  | struct regcache * | regcache,
|  | ULONGEST | inst,
|  | CORE_ADDR | pc,
|  | int | count
| ) |  |
| static

Definition at line 1549 of file mips-tdep.c.

References mips_regnum::fp_control_status, itype_rt, mips32_relative_offset(), mips_regnum(), and regcache_raw_get_unsigned().

Referenced by mips32_next_pc().

## ◆ mips32_insn_at_pc_has_delay_slot()

static int mips32_insn_at_pc_has_delay_slot | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | addr
| ) |  |
| static

Definition at line 7170 of file mips-tdep.c.

References ISA_MIPS, mips32_instruction_has_delay_slot(), mips_fetch_instruction(), and status.

Referenced by mips_adjust_breakpoint_address(), and mips_single_step_through_delay().

## ◆ mips32_instruction_has_delay_slot()

static int mips32_instruction_has_delay_slot | ( | struct gdbarch * | gdbarch,
|  | ULONGEST | inst
| ) |  |
| static

Definition at line 7121 of file mips-tdep.c.

References is_octeon_bbit_op(), itype_op, itype_rs, itype_rt, and rtype_funct.

Referenced by mips32_insn_at_pc_has_delay_slot(), and mips32_scan_prologue().

## ◆ mips32_next_pc()

static CORE_ADDR mips32_next_pc | ( | struct regcache * | regcache,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 1607 of file mips-tdep.c.

References regcache::arch(), bit, mips_regnum::dspctl, gdbarch_tdep(), get_current_frame(), is_octeon_bbit_op(), ISA_MIPS, itype_op, itype_rs, itype_rt, jtype_target, mips32_bc1_pc(), mips32_relative_offset(), mips_fetch_instruction(), mips_regnum(), gdbarch_tdep::pc, regcache_raw_get_signed(), regcache_raw_get_unsigned(), rtype_funct, rtype_rs, and gdbarch_tdep::syscall_next_pc.

Referenced by mips_next_pc().

## ◆ mips32_relative_offset()

static LONGEST mips32_relative_offset | ( | ULONGEST | inst | ) |
| static

Definition at line 1539 of file mips-tdep.c.

References itype_immediate.

Referenced by mips32_bc1_pc(), mips32_next_pc(), and mips_deal_with_atomic_sequence().

## ◆ mips32_scan_prologue()

static CORE_ADDR mips32_scan_prologue | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | start_pc,
|  | CORE_ADDR | limit_pc,
|  | struct frame_info * | this_frame,
|  | struct mips_frame_cache * | this_cache
| ) |  |
| static

Definition at line 3377 of file mips-tdep.c.

References mips_frame_cache::base, gdbarch_num_regs(), get_frame_register_signed(), ISA_MIPS, gdb.printer.bound_registers::long, mips32_instruction_has_delay_slot(), mips_abi_regsize(), mips_fetch_instruction(), MIPS_INSN32_SIZE, MIPS_RA_REGNUM, mips_regnum(), MIPS_SP_REGNUM, offset, mips_regnum::pc, reset_saved_regs(), mips_frame_cache::saved_regs, and set_reg_offset().

Referenced by mips_insn32_frame_cache(), and mips_skip_prologue().

## ◆ mips32_stack_frame_destroyed_p()

static int mips32_stack_frame_destroyed_p | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 6665 of file mips-tdep.c.

References find_pc_partial_function(), ISA_MIPS, mips_fetch_instruction(), and MIPS_INSN32_SIZE.

Referenced by mips_stack_frame_destroyed_p().

## ◆ mips_abi()

enum mips_abi mips_abi | ( | struct gdbarch * | gdbarch | ) |

Definition at line 255 of file mips-tdep.c.

References gdbarch_tdep(), and gdbarch_tdep::mips_abi.

Referenced by mips_gdbarch_init(), mips_register_name(), and show_mips_abi().

## ◆ mips_abi_regsize()

unsigned int mips_abi_regsize | ( | struct gdbarch * | gdbarch | ) |

Definition at line 280 of file mips-tdep.c.

References _, internal_error(), MIPS_ABI_EABI32, MIPS_ABI_EABI64, MIPS_ABI_LAST, MIPS_ABI_N32, MIPS_ABI_N64, MIPS_ABI_O32, MIPS_ABI_O64, and MIPS_ABI_UNKNOWN.

Referenced by mips16_scan_prologue(), mips32_scan_prologue(), mips_eabi_push_dummy_call(), mips_eabi_return_value(), mips_fbsd_collect_fpregset(), mips_fbsd_collect_gregset(), mips_fbsd_iterate_over_regset_sections(), mips_fbsd_supply_fpregset(), mips_fbsd_supply_gregset(), mips_linux_register_u_offset(), mips_pseudo_register_type(), mips_register_type(), mips_sde_frame_cache(), and print_gp_register_row().

## ◆ mips_abi_update()

static void mips_abi_update | ( | const char * | ignore_args,
|  | int | from_tty,
|  | struct cmd_list_element * | c
| ) |  |
| static

Definition at line 8826 of file mips-tdep.c.

References gdbarch_info_init(), and gdbarch_update_p().

Referenced by _initialize_mips_tdep().

## ◆ mips_about_to_return()

static int mips_about_to_return | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 4175 of file mips-tdep.c.

References gdb_assert, ISA_MIPS, mips_fetch_instruction(), and mips_pc_is_mips().

Referenced by heuristic_proc_start().

## ◆ mips_addr_bits_remove()

static CORE_ADDR mips_addr_bits_remove | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | addr
| ) |  |
| static

Definition at line 3844 of file mips-tdep.c.

References gdbarch_tdep(), and mips_mask_address_p().

Referenced by mips_gdbarch_init().

## ◆ mips_adjust_breakpoint_address()

static CORE_ADDR mips_adjust_breakpoint_address | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | bpaddr
| ) |  |
| static

Definition at line 7341 of file mips-tdep.c.

References find_pc_partial_function(), micromips_insn_at_pc_has_delay_slot(), mips16_insn_at_pc_has_delay_slot(), mips32_insn_at_pc_has_delay_slot(), MIPS_INSN16_SIZE, mips_pc_is_micromips(), mips_pc_is_mips(), mips_segment_boundary(), and unmake_compact_addr().

Referenced by mips_gdbarch_init().

## ◆ mips_adjust_dwarf2_addr()

static CORE_ADDR mips_adjust_dwarf2_addr | ( | CORE_ADDR | pc | ) |
| static

Definition at line 1269 of file mips-tdep.c.

References make_compact_addr(), mips_pc_is_mips(), and unmake_compact_addr().

Referenced by mips_adjust_dwarf2_line(), and mips_gdbarch_init().

## ◆ mips_adjust_dwarf2_line()

static CORE_ADDR mips_adjust_dwarf2_line | ( | CORE_ADDR | addr,
|  | int | rel
| ) |  |
| static

Definition at line 1310 of file mips-tdep.c.

References mips_adjust_dwarf2_addr().

Referenced by mips_gdbarch_init().

## ◆ mips_ax_pseudo_register_collect()

static int mips_ax_pseudo_register_collect | ( | struct gdbarch * | gdbarch,
|  | struct agent_expr * | ax,
|  | int | reg
| ) |  |
| static

Definition at line 799 of file mips-tdep.c.

References ax_reg_mask(), gdb_assert, and gdbarch_num_regs().

Referenced by mips_gdbarch_init().

## ◆ mips_ax_pseudo_register_push_stack()

static int mips_ax_pseudo_register_push_stack | ( | struct gdbarch * | gdbarch,
|  | struct agent_expr * | ax,
|  | int | reg
| ) |  |
| static

Definition at line 812 of file mips-tdep.c.

References _, ax_const_l(), ax_reg(), ax_simple(), gdb_assert, gdbarch_byte_order(), gdbarch_num_regs(), internal_error(), mips64_transfers_32bit_regs_p, and register_size().

Referenced by mips_gdbarch_init().

## ◆ mips_breakpoint_kind_from_pc()

static int mips_breakpoint_kind_from_pc | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR * | pcptr
| ) |  |
| static

Definition at line 7032 of file mips-tdep.c.

References ISA_MICROMIPS, MIPS_BP_KIND_MICROMIPS16, MIPS_BP_KIND_MICROMIPS32, MIPS_BP_KIND_MIPS16, MIPS_BP_KIND_MIPS32, mips_fetch_instruction(), mips_insn_size(), mips_pc_is_micromips(), mips_pc_is_mips16(), status, and unmake_compact_addr().

Referenced by mips_gdbarch_init().

## ◆ mips_convert_register_float_case_p()

static int mips_convert_register_float_case_p | ( | struct gdbarch * | gdbarch,
|  | int | regnum,
|  | struct type * | type
| ) |  |
| static

Definition at line 878 of file mips-tdep.c.

References gdbarch_byte_order(), mips_float_register_p(), register_size(), regnum, TYPE_CODE, TYPE_CODE_FLT, and TYPE_LENGTH.

Referenced by mips_convert_register_p(), mips_register_to_value(), and mips_value_to_register().

## ◆ mips_convert_register_gpreg_case_p()

static int mips_convert_register_gpreg_case_p | ( | struct gdbarch * | gdbarch,
|  | int | regnum,
|  | struct type * | type
| ) |  |
| static

Definition at line 891 of file mips-tdep.c.

References gdbarch_num_regs(), register_size(), regnum, and TYPE_LENGTH.

Referenced by mips_convert_register_p(), mips_register_to_value(), and mips_value_to_register().

## ◆ mips_convert_register_p()

static int mips_convert_register_p | ( | struct gdbarch * | gdbarch,
|  | int | regnum,
|  | struct type * | type
| ) |  |
| static

Definition at line 902 of file mips-tdep.c.

References mips_convert_register_float_case_p(), mips_convert_register_gpreg_case_p(), and regnum.

Referenced by mips_gdbarch_init().

## ◆ mips_deal_with_atomic_sequence()

static std::vector<CORE_ADDR> mips_deal_with_atomic_sequence | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 3883 of file mips-tdep.c.

References is_branch(), ISA_MIPS, itype_op, itype_rs, itype_rt, LL_OPCODE, LLD_OPCODE, loc, mips32_relative_offset(), mips_fetch_instruction(), MIPS_INSN32_SIZE, gdbarch_tdep::pc, rtype_funct, SC_OPCODE, and SCD_OPCODE.

Referenced by deal_with_atomic_sequence().

## ◆ mips_dummy_id()

static struct frame_id mips_dummy_id | ( | struct gdbarch * | gdbarch,
|  | struct frame_info * | this_frame
| ) |  |
| static

Definition at line 1409 of file mips-tdep.c.

References frame_id_build(), gdbarch_num_regs(), get_frame_pc(), get_frame_register_signed(), and MIPS_SP_REGNUM.

Referenced by mips_gdbarch_init().

## ◆ mips_dump_tdep()

static void mips_dump_tdep | ( | struct gdbarch * | gdbarch,
|  | struct ui_file * | file
| ) |  |
| static

Definition at line 8906 of file mips-tdep.c.

References gdbarch_tdep::default_mask_address_p, gdbarch_tdep::elf_flags, fprintf_unfiltered(), gdbarch_tdep(), gdbarch_tdep::mips_abi, mips_abi_strings, MIPS_DEFAULT_FPU_TYPE, MIPS_EABI, MIPS_FPU_TYPE, mips_fpu_type_str(), and mips_mask_address_p().

Referenced by _initialize_mips_tdep().

## ◆ mips_dwarf_dwarf2_ecoff_reg_to_regnum()

static int mips_dwarf_dwarf2_ecoff_reg_to_regnum | ( | struct gdbarch * | gdbarch,
|  | int | num
| ) |  |
| static

Definition at line 7914 of file mips-tdep.c.

References mips_regnum::dspacc, mips_regnum::fp0, gdbarch_num_regs(), mips_regnum::hi, mips_regnum::lo, mips_regnum(), and regnum.

Referenced by mips_gdbarch_init().

## ◆ mips_eabi_push_dummy_call()

static CORE_ADDR mips_eabi_push_dummy_call | ( | struct gdbarch * | gdbarch,
|  | struct value * | function,
|  | struct regcache * | regcache,
|  | CORE_ADDR | bp_addr,
|  | int | nargs,
|  | struct value ** | args,
|  | CORE_ADDR | sp,
|  | int | struct_return,
|  | CORE_ADDR | struct_addr
| ) |  |
| static

Definition at line 4467 of file mips-tdep.c.

References align_down(), align_up(), check_typedef(), extract_signed_integer(), find_function_addr(), fp_register_arg_p(), fprintf_filtered(), fprintf_unfiltered(), gdb_assert, gdb_stdlog, gdbarch_byte_order(), MAX_MIPS_ABI_REGSIZE, MIPS_A0_REGNUM, MIPS_ABI_EABI32, mips_abi_regsize(), mips_debug, mips_fpa0_regnum(), MIPS_LAST_ARG_REGNUM, MIPS_LAST_FP_ARG_REGNUM, MIPS_RA_REGNUM, MIPS_SP_REGNUM, MIPS_T9_REGNUM, paddress(), phex(), regcache_cooked_write_signed(), regcache_cooked_write_unsigned(), store_unsigned_integer(), TYPE_CODE, TYPE_CODE_FLT, TYPE_CODE_INT, TYPE_CODE_PTR, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_LENGTH, value_address(), value_contents(), value_type(), and write_memory().

Referenced by mips_gdbarch_init().

## ◆ mips_eabi_return_value()

static enum return_value_convention mips_eabi_return_value | ( | struct gdbarch * | gdbarch,
|  | struct value * | function,
|  | struct type * | type,
|  | struct regcache * | regcache,
|  | gdb_byte * | readbuf,
|  | const gdb_byte * | writebuf
| ) |  |
| static

Definition at line 4743 of file mips-tdep.c.

References check_typedef(), mips_regnum::fp0, fprintf_unfiltered(), gdb_stderr, gdbarch_byte_order(), gdbarch_num_regs(), gdbarch_tdep(), mips_abi_regsize(), mips_debug, MIPS_FPU_NONE, gdbarch_tdep::mips_fpu_type, mips_regnum(), MIPS_V0_REGNUM, mips_xfer_register(), offset, regnum, RETURN_VALUE_REGISTER_CONVENTION, RETURN_VALUE_STRUCT_CONVENTION, TYPE_CODE, TYPE_CODE_FLT, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_FIELD_TYPE, TYPE_LENGTH, and TYPE_NFIELDS.

Referenced by mips_gdbarch_init().

## ◆ mips_elf_make_msymbol_special()

static void mips_elf_make_msymbol_special | ( | asymbol * | sym,
|  | struct minimal_symbol * | msym
| ) |  |
| static

Definition at line 393 of file mips-tdep.c.

References if(), MSYMBOL_TARGET_FLAG_MICROMIPS, MSYMBOL_TARGET_FLAG_MIPS16, MSYMBOL_VALUE_RAW_ADDRESS, and SET_MSYMBOL_VALUE_ADDRESS.

Referenced by mips_gdbarch_init().

## ◆ mips_fetch_instruction()

static ULONGEST mips_fetch_instruction | ( | struct gdbarch * | gdbarch,
|  | enum mips_isa | isa,
|  | CORE_ADDR | addr,
|  | int * | errp
| ) |  |
| static

Definition at line 1432 of file mips-tdep.c.

References _, frame_info::addr, err, extract_unsigned_integer(), gdbarch_byte_order(), internal_error(), ISA_MICROMIPS, ISA_MIPS, ISA_MIPS16, memory_error(), MIPS_INSN16_SIZE, MIPS_INSN32_SIZE, target_read_memory(), TARGET_XFER_E_IO, and unmake_compact_addr().

Referenced by heuristic_proc_start(), micromips_deal_with_atomic_sequence(), micromips_insn_at_pc_has_delay_slot(), micromips_next_pc(), micromips_pc_insn_size(), micromips_scan_prologue(), micromips_stack_frame_destroyed_p(), mips16_insn_at_pc_has_delay_slot(), mips16_scan_prologue(), mips16_stack_frame_destroyed_p(), mips32_insn_at_pc_has_delay_slot(), mips32_next_pc(), mips32_scan_prologue(), mips32_stack_frame_destroyed_p(), mips_about_to_return(), mips_breakpoint_kind_from_pc(), mips_deal_with_atomic_sequence(), mips_get_mips16_fn_stub_pc(), mips_single_step_through_delay(), and unpack_mips16().

## ◆ mips_find_abi_section()

static void mips_find_abi_section | ( | bfd * | abfd,
|  | asection * | sect,
|  | void * | obj
| ) |  |
| static

Definition at line 7976 of file mips-tdep.c.

References _, MIPS_ABI_EABI32, MIPS_ABI_EABI64, MIPS_ABI_N32, MIPS_ABI_N64, MIPS_ABI_O32, MIPS_ABI_O64, MIPS_ABI_UNKNOWN, name, startswith(), and warning().

Referenced by mips_gdbarch_init().

## ◆ mips_find_long_section()

static void mips_find_long_section | ( | bfd * | abfd,
|  | asection * | sect,
|  | void * | obj
| ) |  |
| static

Definition at line 8004 of file mips-tdep.c.

References _, name, startswith(), and warning().

Referenced by mips_gdbarch_init().

## ◆ mips_float_register_p()

static int mips_float_register_p | ( | struct gdbarch * | gdbarch,
|  | int | regnum
| ) |  |
| static

Definition at line 233 of file mips-tdep.c.

References mips_regnum::fp0, gdbarch_num_regs(), and regnum.

Referenced by mips_convert_register_float_case_p(), mips_print_register(), mips_print_registers_info(), mips_pseudo_register_type(), mips_register_type(), and print_gp_register_row().

## ◆ mips_fpa0_regnum()

static int mips_fpa0_regnum | ( | struct gdbarch * | gdbarch | ) |
| static

Definition at line 224 of file mips-tdep.c.

References mips_regnum::fp0, and mips_regnum().

Referenced by mips_eabi_push_dummy_call(), mips_n32n64_push_dummy_call(), mips_o32_push_dummy_call(), and mips_o64_push_dummy_call().

## ◆ mips_fpu_type_str()

static const char* mips_fpu_type_str | ( | enum mips_fpu_type | fpu_type | ) |
| static

Definition at line 8890 of file mips-tdep.c.

References MIPS_FPU_DOUBLE, MIPS_FPU_NONE, and MIPS_FPU_SINGLE.

Referenced by mips_dump_tdep().

## ◆ mips_frame_align()

static CORE_ADDR mips_frame_align | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | addr
| ) |  |
| static

Definition at line 4422 of file mips-tdep.c.

References align_down().

Referenced by mips_gdbarch_init(), and mips_push_dummy_code().

## ◆ mips_gdbarch_init()

static struct gdbarch* mips_gdbarch_init | ( | struct gdbarch_info | info,
|  | struct gdbarch_list * | arches
| ) |  |
| static

Definition at line 8071 of file mips-tdep.c.

References _, gdbarch_info::abfd, address_to_signed_pointer(), mips_regnum::badvaddr, gdbarch_info::bfd_arch_info, mips_regnum::cause, core_addr_lessthan(), gdbarch_tdep::default_mask_address_p, mips_regnum::dspacc, mips_regnum::dspctl, dwarf2_append_unwinders(), dwarf2_frame_base_sniffer(), gdbarch_tdep::elf_flags, floatformats_ibm_long_double, gdbarch_tdep::found_abi, mips_regnum::fp0, mips_regnum::fp_control_status, mips_regnum::fp_implementation_revision, fprintf_unfiltered(), frame_base_append_sniffer(), frame_unwind_append_unwinder(), GDB_OSABI_LINUX, gdb_print_insn_mips(), gdb_print_insn_mips_n32(), gdb_print_insn_mips_n64(), gdb_stdlog, gdbarch_list::gdbarch, gdbarch_alloc(), gdbarch_debug, gdbarch_init_osabi(), gdbarch_list_lookup_by_info(), gdbarch_num_regs(), GDBARCH_OBSTACK_ZALLOC, gdbarch_tdep(), global_mips_abi(), global_mips_compression(), mips_regnum::hi, internal_error(), ISA_MICROMIPS, ISA_MIPS16, mips_regnum::lo, gdbarch_tdep::mips64_transfers_32bit_regs_p, mips64_transfers_32bit_regs_p, MIPS_A0_REGNUM, gdbarch_tdep::mips_abi, mips_abi(), MIPS_ABI_EABI32, MIPS_ABI_EABI64, MIPS_ABI_N32, MIPS_ABI_N64, MIPS_ABI_O32, MIPS_ABI_O64, MIPS_ABI_UNKNOWN, mips_addr_bits_remove(), mips_adjust_breakpoint_address(), mips_adjust_dwarf2_addr(), mips_adjust_dwarf2_line(), mips_ax_pseudo_register_collect(), mips_ax_pseudo_register_push_stack(), mips_breakpoint_kind_from_pc(), mips_compression_string, mips_compression_strings, mips_convert_register_p(), mips_dummy_id(), mips_dwarf_dwarf2_ecoff_reg_to_regnum(), mips_eabi_push_dummy_call(), mips_eabi_return_value(), mips_elf_make_msymbol_special(), MIPS_EMBED_BADVADDR_REGNUM, MIPS_EMBED_CAUSE_REGNUM, MIPS_EMBED_FP0_REGNUM, MIPS_EMBED_HI_REGNUM, MIPS_EMBED_LO_REGNUM, MIPS_EMBED_PC_REGNUM, mips_find_abi_section(), mips_find_long_section(), MIPS_FPU_DOUBLE, MIPS_FPU_NONE, MIPS_FPU_SINGLE, gdbarch_tdep::mips_fpu_type, mips_fpu_type, MIPS_FPU_TYPE, mips_fpu_type_auto, mips_frame_align(), mips_generic_reg_names, mips_in_return_stub(), mips_insn16_frame_base_sniffer(), mips_insn16_frame_unwind, mips_insn32_frame_base_sniffer(), mips_insn32_frame_unwind, mips_integer_to_address(), gdbarch_tdep::mips_isa, gdbarch_tdep::mips_last_arg_regnum, MIPS_LAST_EMBED_REGNUM, gdbarch_tdep::mips_last_fp_arg_regnum, mips_linux_reg_names, mips_make_symbol_special(), mips_micro_frame_base_sniffer(), mips_micro_frame_unwind, mips_n32_n64_aliases, mips_n32n64_push_dummy_call(), mips_n32n64_return_value(), mips_numeric_register_aliases, mips_o32_aliases, mips_o32_push_dummy_call(), mips_o32_return_value(), mips_o64_push_dummy_call(), mips_o64_return_value(), mips_print_float_info(), mips_print_registers_info(), gdbarch_tdep::mips_processor_reg_names, MIPS_PS_REGNUM, mips_pseudo_register_read(), mips_pseudo_register_type(), mips_pseudo_register_write(), mips_push_dummy_code(), MIPS_RA_REGNUM, mips_read_pc(), mips_register_aliases, mips_register_g_packet_guesses(), mips_register_name(), mips_register_reggroup_p(), mips_register_sim_regno(), mips_register_to_value(), mips_register_type(), mips_regnum(), mips_single_step_through_delay(), mips_skip_prologue(), mips_skip_trampoline_code(), MIPS_SP_REGNUM, mips_stab_reg_to_regnum(), mips_stack_frame_destroyed_p(), mips_stub_frame_base_sniffer(), mips_stub_frame_unwind, mips_sw_breakpoint_from_kind(), mips_tdesc_register_reggroup_p(), mips_tx39_reg_names, mips_unwind_pc(), mips_unwind_sp(), mips_value_to_register(), mips_virtual_frame_pointer(), mips_write_pc(), MIPS_ZERO_REGNUM, name, gdbarch_list::next, gdbarch_tdep::num_regs, ON_STACK, gdbarch_info::osabi, mips_regnum::pc, PROPERTY_GP32, PROPERTY_GP64, gdbarch_tdep::register_size, gdbarch_tdep::register_size_valid_p, regnum, gdbarch_tdep::regnum, set_gdbarch_addr_bits_remove(), set_gdbarch_address_to_pointer(), set_gdbarch_adjust_breakpoint_address(), set_gdbarch_adjust_dwarf2_addr(), set_gdbarch_adjust_dwarf2_line(), set_gdbarch_ax_pseudo_register_collect(), set_gdbarch_ax_pseudo_register_push_stack(), set_gdbarch_breakpoint_kind_from_pc(), set_gdbarch_call_dummy_location(), set_gdbarch_convert_register_p(), set_gdbarch_double_bit(), set_gdbarch_dummy_id(), set_gdbarch_dwarf2_reg_to_regnum(), set_gdbarch_ecoff_reg_to_regnum(), set_gdbarch_elf_make_msymbol_special(), set_gdbarch_float_bit(), set_gdbarch_fp0_regnum(), set_gdbarch_frame_align(), set_gdbarch_have_nonsteppable_watchpoint(), set_gdbarch_in_solib_return_trampoline(), set_gdbarch_inner_than(), set_gdbarch_int_bit(), set_gdbarch_integer_to_address(), set_gdbarch_long_bit(), set_gdbarch_long_double_bit(), set_gdbarch_long_double_format(), set_gdbarch_long_long_bit(), set_gdbarch_make_symbol_special(), set_gdbarch_num_pseudo_regs(), set_gdbarch_num_regs(), set_gdbarch_pc_regnum(), set_gdbarch_pointer_to_address(), set_gdbarch_print_float_info(), set_gdbarch_print_insn(), set_gdbarch_print_registers_info(), set_gdbarch_pseudo_register_read(), set_gdbarch_pseudo_register_write(), set_gdbarch_ptr_bit(), set_gdbarch_push_dummy_call(), set_gdbarch_push_dummy_code(), set_gdbarch_read_pc(), set_gdbarch_register_name(), set_gdbarch_register_reggroup_p(), set_gdbarch_register_sim_regno(), set_gdbarch_register_to_value(), set_gdbarch_register_type(), set_gdbarch_return_value(), set_gdbarch_short_bit(), set_gdbarch_single_step_through_delay(), set_gdbarch_skip_prologue(), set_gdbarch_skip_trampoline_code(), set_gdbarch_sp_regnum(), set_gdbarch_stab_reg_to_regnum(), set_gdbarch_stack_frame_destroyed_p(), set_gdbarch_sw_breakpoint_from_kind(), set_gdbarch_unwind_pc(), set_gdbarch_unwind_sp(), set_gdbarch_value_to_register(), set_gdbarch_vbit_in_delta(), set_gdbarch_virtual_frame_pointer(), set_gdbarch_write_pc(), set_tdesc_pseudo_register_type(), signed_pointer_to_address(), gdbarch_info::target_desc, tdesc_data, gdbarch_info::tdesc_data, tdesc_data_alloc(), tdesc_data_cleanup(), tdesc_find_feature(), tdesc_has_registers(), tdesc_numbered_register(), tdesc_property(), tdesc_use_registers(), user_reg_add(), value_of_mips_user_reg(), and XCNEW.

Referenced by _initialize_mips_tdep().

## ◆ mips_get_mips16_fn_stub_pc()

static CORE_ADDR mips_get_mips16_fn_stub_pc | ( | struct frame_info * | frame,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 7556 of file mips-tdep.c.

References gdbarch::byte_order, extract_signed_integer(), gdbarch_byte_order(), get_frame_arch(), ISA_MIPS, itype_immediate, itype_op, itype_rs, itype_rt, jtype_target, memset(), mips_fetch_instruction(), MIPS_GP_REGNUM, MIPS_INSN32_SIZE, MIPS_T9_REGNUM, MIPS_ZERO_REGNUM, rtype_funct, rtype_rd, rtype_rs, rtype_rt, status, and target_read_memory().

Referenced by mips_skip_mips16_trampoline_code().

## ◆ mips_in_frame_stub()

static int mips_in_frame_stub | ( | CORE_ADDR | pc | ) |
| static

Definition at line 1339 of file mips-tdep.c.

References find_pc_partial_function(), mips_str_call_stub, mips_str_fn_stub, mips_str_mips16_call_stub, name, and startswith().

Referenced by mips_unwind_pc().

## ◆ mips_in_return_stub()

static int mips_in_return_stub | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc,
|  | const char * | name
| ) |  |
| static

Definition at line 7757 of file mips-tdep.c.

References find_pc_partial_function(), mips_is_stub_mode(), mips_is_stub_suffix(), mips_str_call_fp_stub, mips_str_mips16_call_stub, mips_str_mips16_ret_stub, mips_str_pic, and name.

Referenced by mips_gdbarch_init().

## ◆ mips_insn16_frame_base_address()

static CORE_ADDR mips_insn16_frame_base_address | ( | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 2888 of file mips-tdep.c.

References mips_frame_cache::base, and mips_insn16_frame_cache().

## ◆ mips_insn16_frame_base_sniffer()

static const struct frame_base* mips_insn16_frame_base_sniffer | ( | struct frame_info * | this_frame | ) |
| static

Definition at line 2905 of file mips-tdep.c.

References get_frame_arch(), get_frame_pc(), mips_insn16_frame_base, and mips_pc_is_mips16().

Referenced by mips_gdbarch_init().

## ◆ mips_insn16_frame_cache()

static struct mips_frame_cache* mips_insn16_frame_cache | ( | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 2809 of file mips-tdep.c.

References mips_frame_cache::base, find_pc_partial_function(), FRAME_OBSTACK_ZALLOC, gdbarch_num_regs(), get_frame_address_in_block(), get_frame_arch(), heuristic_proc_start(), mips16_scan_prologue(), MIPS_SP_REGNUM, mips_frame_cache::saved_regs, trad_frame_alloc_saved_regs(), and trad_frame_set_value().

Referenced by mips_insn16_frame_base_address(), mips_insn16_frame_prev_register(), and mips_insn16_frame_this_id().

## ◆ mips_insn16_frame_prev_register()

static struct value* mips_insn16_frame_prev_register | ( | struct frame_info * | this_frame,
|  | void ** | this_cache,
|  | int | regnum
| ) |  |
| static

Definition at line 2858 of file mips-tdep.c.

References mips_insn16_frame_cache(), regnum, mips_frame_cache::saved_regs, and trad_frame_get_prev_register().

## ◆ mips_insn16_frame_sniffer()

static int mips_insn16_frame_sniffer | ( | const struct frame_unwind * | self,
|  | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 2867 of file mips-tdep.c.

References get_frame_arch(), get_frame_pc(), and mips_pc_is_mips16().

## ◆ mips_insn16_frame_this_id()

static void mips_insn16_frame_this_id | ( | struct frame_info * | this_frame,
|  | void ** | this_cache,
|  | struct frame_id * | this_id
| ) |  |
| static

Definition at line 2846 of file mips-tdep.c.

References mips_frame_cache::base, frame_id_build(), get_frame_func(), and mips_insn16_frame_cache().

## ◆ mips_insn32_frame_base_address()

static CORE_ADDR mips_insn32_frame_base_address | ( | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 3700 of file mips-tdep.c.

References mips_frame_cache::base, and mips_insn32_frame_cache().

## ◆ mips_insn32_frame_base_sniffer()

static const struct frame_base* mips_insn32_frame_base_sniffer | ( | struct frame_info * | this_frame | ) |
| static

Definition at line 3717 of file mips-tdep.c.

References get_frame_pc(), mips_insn32_frame_base, and mips_pc_is_mips().

Referenced by mips_gdbarch_init().

## ◆ mips_insn32_frame_cache()

static struct mips_frame_cache* mips_insn32_frame_cache | ( | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 3621 of file mips-tdep.c.

References mips_frame_cache::base, find_pc_partial_function(), FRAME_OBSTACK_ZALLOC, gdbarch_num_regs(), get_frame_address_in_block(), get_frame_arch(), heuristic_proc_start(), mips32_scan_prologue(), MIPS_SP_REGNUM, mips_frame_cache::saved_regs, trad_frame_alloc_saved_regs(), and trad_frame_set_value().

Referenced by mips_insn32_frame_base_address(), mips_insn32_frame_prev_register(), and mips_insn32_frame_this_id().

## ◆ mips_insn32_frame_prev_register()

static struct value* mips_insn32_frame_prev_register | ( | struct frame_info * | this_frame,
|  | void ** | this_cache,
|  | int | regnum
| ) |  |
| static

Definition at line 3671 of file mips-tdep.c.

References mips_insn32_frame_cache(), regnum, mips_frame_cache::saved_regs, and trad_frame_get_prev_register().

## ◆ mips_insn32_frame_sniffer()

static int mips_insn32_frame_sniffer | ( | const struct frame_unwind * | self,
|  | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 3680 of file mips-tdep.c.

References get_frame_pc(), and mips_pc_is_mips().

## ◆ mips_insn32_frame_this_id()

static void mips_insn32_frame_this_id | ( | struct frame_info * | this_frame,
|  | void ** | this_cache,
|  | struct frame_id * | this_id
| ) |  |
| static

Definition at line 3659 of file mips-tdep.c.

References mips_frame_cache::base, frame_id_build(), get_frame_func(), and mips_insn32_frame_cache().

## ◆ mips_insn_size()

static int mips_insn_size | ( | enum mips_isa | isa,
|  | ULONGEST | insn
| ) |  |
| static

Definition at line 1517 of file mips-tdep.c.

References _, internal_error(), ISA_MICROMIPS, ISA_MIPS, ISA_MIPS16, micromips_op, MIPS_INSN16_SIZE, and MIPS_INSN32_SIZE.

Referenced by micromips_deal_with_atomic_sequence(), micromips_insn_at_pc_has_delay_slot(), micromips_next_pc(), micromips_pc_insn_size(), micromips_scan_prologue(), micromips_stack_frame_destroyed_p(), mips_breakpoint_kind_from_pc(), and mips_single_step_through_delay().

## ◆ mips_integer_to_address()

static CORE_ADDR mips_integer_to_address | ( | struct gdbarch * | gdbarch,
|  | struct type * | type,
|  | const gdb_byte * | buf
| ) |  |
| static

Definition at line 7955 of file mips-tdep.c.

References extract_signed_integer(), gdbarch_byte_order(), and TYPE_LENGTH.

Referenced by mips_gdbarch_init().

## ◆ mips_is_stub_mode()

static int mips_is_stub_mode | ( | const char * | mode | ) |
| static

Definition at line 7497 of file mips-tdep.c.

Referenced by mips_in_return_stub(), and mips_skip_mips16_trampoline_code().

## ◆ mips_is_stub_suffix()

static int mips_is_stub_suffix | ( | const char * | suffix,
|  | int | zero
| ) |  |
| static

Definition at line 7475 of file mips-tdep.c.

Referenced by mips_in_return_stub(), and mips_skip_mips16_trampoline_code().

## ◆ mips_isa_regsize()

int mips_isa_regsize | ( | struct gdbarch * | gdbarch | ) |

Definition at line 261 of file mips-tdep.c.

References bits_per_byte, gdbarch_bfd_arch_info(), gdbarch_tdep(), gdbarch_tdep::register_size, and gdbarch_tdep::register_size_valid_p.

Referenced by fill_fpregset(), fill_gregset(), mips_register_type(), mipsnbsd_fill_fpreg(), mipsnbsd_fill_reg(), mipsnbsd_iterate_over_regset_sections(), mipsnbsd_supply_fpreg(), mipsnbsd_supply_fpregset(), mipsnbsd_supply_gregset(), mipsnbsd_supply_reg(), supply_fpregset(), and supply_gregset().

## ◆ mips_make_symbol_special()

static void mips_make_symbol_special | ( | struct symbol * | sym,
|  | struct objfile * | objfile
| ) |  |
| static

Definition at line 453 of file mips-tdep.c.

References BLOCK_START, LOC_BLOCK, lookup_minimal_symbol_by_pc(), bound_minimal_symbol::minsym, msymbol_is_mips(), SYMBOL_BLOCK_VALUE, and SYMBOL_CLASS.

Referenced by mips_gdbarch_init().

## ◆ mips_mask_address_p()

static int mips_mask_address_p | ( | struct gdbarch_tdep * | tdep | ) |
| static

Definition at line 1128 of file mips-tdep.c.

References _, AUTO_BOOLEAN_AUTO, AUTO_BOOLEAN_FALSE, AUTO_BOOLEAN_TRUE, gdbarch_tdep::default_mask_address_p, internal_error(), and mask_address_var.

Referenced by mips_addr_bits_remove(), mips_dump_tdep(), and show_mask_address().

## ◆ mips_micro_frame_base_address()

static CORE_ADDR mips_micro_frame_base_address | ( | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 3324 of file mips-tdep.c.

References mips_frame_cache::base, and mips_micro_frame_cache().

## ◆ mips_micro_frame_base_sniffer()

static const struct frame_base* mips_micro_frame_base_sniffer | ( | struct frame_info * | this_frame | ) |
| static

Definition at line 3341 of file mips-tdep.c.

References get_frame_arch(), get_frame_pc(), mips_micro_frame_base, and mips_pc_is_micromips().

Referenced by mips_gdbarch_init().

## ◆ mips_micro_frame_cache()

static struct mips_frame_cache* mips_micro_frame_cache | ( | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 3243 of file mips-tdep.c.

References mips_frame_cache::base, find_pc_partial_function(), FRAME_OBSTACK_ZALLOC, gdbarch_num_regs(), get_frame_address_in_block(), get_frame_arch(), heuristic_proc_start(), micromips_scan_prologue(), MIPS_SP_REGNUM, mips_frame_cache::saved_regs, trad_frame_alloc_saved_regs(), and trad_frame_set_value().

Referenced by mips_micro_frame_base_address(), mips_micro_frame_prev_register(), and mips_micro_frame_this_id().

## ◆ mips_micro_frame_prev_register()

static struct value* mips_micro_frame_prev_register | ( | struct frame_info * | this_frame,
|  | void ** | this_cache,
|  | int | regnum
| ) |  |
| static

Definition at line 3293 of file mips-tdep.c.

References mips_micro_frame_cache(), regnum, mips_frame_cache::saved_regs, and trad_frame_get_prev_register().

## ◆ mips_micro_frame_sniffer()

static int mips_micro_frame_sniffer | ( | const struct frame_unwind * | self,
|  | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 3302 of file mips-tdep.c.

References get_frame_arch(), get_frame_pc(), and mips_pc_is_micromips().

## ◆ mips_micro_frame_this_id()

static void mips_micro_frame_this_id | ( | struct frame_info * | this_frame,
|  | void ** | this_cache,
|  | struct frame_id * | this_id
| ) |  |
| static

Definition at line 3281 of file mips-tdep.c.

References mips_frame_cache::base, frame_id_build(), get_frame_func(), and mips_micro_frame_cache().

## ◆ mips_n32n64_fp_arg_chunk_p()

static int mips_n32n64_fp_arg_chunk_p | ( | struct gdbarch * | gdbarch,
|  | struct type * | arg_type,
|  | int | offset
| ) |  |
| static

Definition at line 4811 of file mips-tdep.c.

References check_typedef(), field_is_static(), MIPS64_REGSIZE, MIPS_FPU_DOUBLE, MIPS_FPU_TYPE, offset, TYPE_CODE, TYPE_CODE_FLT, TYPE_CODE_STRUCT, TYPE_FIELD, TYPE_FIELD_BITPOS, TYPE_FIELD_TYPE, TYPE_LENGTH, and TYPE_NFIELDS.

Referenced by mips_n32n64_push_dummy_call().

## ◆ mips_n32n64_push_dummy_call()

static CORE_ADDR mips_n32n64_push_dummy_call | ( | struct gdbarch * | gdbarch,
|  | struct value * | function,
|  | struct regcache * | regcache,
|  | CORE_ADDR | bp_addr,
|  | int | nargs,
|  | struct value ** | args,
|  | CORE_ADDR | sp,
|  | int | struct_return,
|  | CORE_ADDR | struct_addr
| ) |  |
| static

Definition at line 4861 of file mips-tdep.c.

References align_down(), align_up(), check_typedef(), extract_signed_integer(), extract_unsigned_integer(), find_function_addr(), fp_register_arg_p(), fprintf_filtered(), fprintf_unfiltered(), gdb_assert, gdb_stdlog, gdbarch_byte_order(), MIPS64_REGSIZE, MIPS_A0_REGNUM, mips_debug, mips_fpa0_regnum(), MIPS_LAST_ARG_REGNUM, mips_n32n64_fp_arg_chunk_p(), MIPS_RA_REGNUM, MIPS_SP_REGNUM, MIPS_T9_REGNUM, paddress(), phex(), regcache_cooked_write_signed(), regcache_cooked_write_unsigned(), TARGET_CHAR_BIT, TYPE_CODE, TYPE_CODE_INT, TYPE_CODE_PTR, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_LENGTH, TYPE_UNSIGNED, value_contents(), value_type(), and write_memory().

Referenced by mips_gdbarch_init().

## ◆ mips_n32n64_return_value()

static enum return_value_convention mips_n32n64_return_value | ( | struct gdbarch * | gdbarch,
|  | struct value * | function,
|  | struct type * | type,
|  | struct regcache * | regcache,
|  | gdb_byte * | readbuf,
|  | const gdb_byte * | writebuf
| ) |  |
| static

Definition at line 5132 of file mips-tdep.c.

References check_typedef(), FIELD_BITPOS, fprintf_unfiltered(), gdb_stderr, gdbarch_byte_order(), gdbarch_num_regs(), gdbarch_tdep(), MIPS64_REGSIZE, mips_debug, MIPS_FPU_NONE, gdbarch_tdep::mips_fpu_type, MIPS_V0_REGNUM, mips_xfer_register(), offset, register_size(), regnum, RETURN_VALUE_REGISTER_CONVENTION, RETURN_VALUE_STRUCT_CONVENTION, TARGET_CHAR_BIT, TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_FLT, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_FIELD_TYPE, TYPE_FIELDS, TYPE_LENGTH, and TYPE_NFIELDS.

Referenced by mips_gdbarch_init().

## ◆ mips_next_pc()

static CORE_ADDR mips_next_pc | ( | struct regcache * | regcache,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 2345 of file mips-tdep.c.

References regcache::arch(), micromips_next_pc(), mips16_next_pc(), mips32_next_pc(), mips_pc_is_micromips(), and mips_pc_is_mips16().

Referenced by mips_software_single_step().

## ◆ mips_o32_push_dummy_call()

static CORE_ADDR mips_o32_push_dummy_call | ( | struct gdbarch * | gdbarch,
|  | struct value * | function,
|  | struct regcache * | regcache,
|  | CORE_ADDR | bp_addr,
|  | int | nargs,
|  | struct value ** | args,
|  | CORE_ADDR | sp,
|  | int | struct_return,
|  | CORE_ADDR | struct_addr
| ) |  |
| static

Definition at line 5317 of file mips-tdep.c.

References align_down(), align_up(), check_typedef(), extract_signed_integer(), extract_unsigned_integer(), find_function_addr(), fp_register_arg_p(), fprintf_filtered(), fprintf_unfiltered(), gdb_stdlog, gdbarch_byte_order(), MIPS32_REGSIZE, MIPS_A0_REGNUM, mips_debug, mips_fpa0_regnum(), MIPS_LAST_ARG_REGNUM, MIPS_LAST_FP_ARG_REGNUM, MIPS_RA_REGNUM, MIPS_SP_REGNUM, MIPS_T9_REGNUM, mips_type_needs_double_align(), paddress(), phex(), regcache_cooked_write_signed(), regcache_cooked_write_unsigned(), register_size(), gdbarch_tdep::sp, TARGET_CHAR_BIT, TYPE_CODE, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_LENGTH, value_contents(), value_type(), and write_memory().

Referenced by mips_gdbarch_init().

## ◆ mips_o32_return_value()

static enum return_value_convention mips_o32_return_value | ( | struct gdbarch * | gdbarch,
|  | struct value * | function,
|  | struct type * | type,
|  | struct regcache * | regcache,
|  | gdb_byte * | readbuf,
|  | const gdb_byte * | writebuf
| ) |  |
| static

Definition at line 5624 of file mips-tdep.c.

References _, FIELD_BITPOS, find_function_addr(), fprintf_unfiltered(), gdb_assert, gdb_stderr, gdbarch_byte_order(), gdbarch_num_regs(), gdbarch_tdep(), internal_error(), MIPS32_REGSIZE, mips_debug, MIPS_FPU_NONE, gdbarch_tdep::mips_fpu_type, mips_fval_both, mips_fval_fpr, mips_fval_gpr, mips_pc_is_mips16(), MIPS_V0_REGNUM, mips_xfer_register(), offset, register_size(), regnum, RETURN_VALUE_REGISTER_CONVENTION, RETURN_VALUE_STRUCT_CONVENTION, TARGET_CHAR_BIT, TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_FLT, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_FIELD_TYPE, TYPE_FIELDS, TYPE_LENGTH, and TYPE_NFIELDS.

Referenced by mips_gdbarch_init().

## ◆ mips_o64_push_dummy_call()

static CORE_ADDR mips_o64_push_dummy_call | ( | struct gdbarch * | gdbarch,
|  | struct value * | function,
|  | struct regcache * | regcache,
|  | CORE_ADDR | bp_addr,
|  | int | nargs,
|  | struct value ** | args,
|  | CORE_ADDR | sp,
|  | int | struct_return,
|  | CORE_ADDR | struct_addr
| ) |  |
| static

Definition at line 5840 of file mips-tdep.c.

References align_down(), align_up(), check_typedef(), extract_signed_integer(), extract_unsigned_integer(), find_function_addr(), fp_register_arg_p(), fprintf_filtered(), fprintf_unfiltered(), gdb_stdlog, gdbarch_byte_order(), MIPS64_REGSIZE, MIPS_A0_REGNUM, mips_debug, mips_fpa0_regnum(), MIPS_LAST_ARG_REGNUM, MIPS_LAST_FP_ARG_REGNUM, MIPS_RA_REGNUM, MIPS_SP_REGNUM, MIPS_T9_REGNUM, paddress(), phex(), regcache_cooked_write_signed(), regcache_cooked_write_unsigned(), gdbarch_tdep::sp, TARGET_CHAR_BIT, TYPE_CODE, TYPE_CODE_FLT, TYPE_CODE_INT, TYPE_CODE_PTR, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_LENGTH, value_contents(), value_type(), and write_memory().

Referenced by mips_gdbarch_init().

## ◆ mips_o64_return_value()

static enum return_value_convention mips_o64_return_value | ( | struct gdbarch * | gdbarch,
|  | struct value * | function,
|  | struct type * | type,
|  | struct regcache * | regcache,
|  | gdb_byte * | readbuf,
|  | const gdb_byte * | writebuf
| ) |  |
| static

Definition at line 6070 of file mips-tdep.c.

References find_function_addr(), fp_register_arg_p(), fprintf_unfiltered(), gdb_assert, gdb_stderr, gdbarch_byte_order(), gdbarch_num_regs(), MIPS64_REGSIZE, mips_debug, mips_fval_both, mips_fval_fpr, mips_fval_gpr, mips_pc_is_mips16(), MIPS_V0_REGNUM, mips_xfer_register(), offset, regnum, RETURN_VALUE_REGISTER_CONVENTION, RETURN_VALUE_STRUCT_CONVENTION, TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_STRUCT, TYPE_CODE_UNION, and TYPE_LENGTH.

Referenced by mips_gdbarch_init().

## ◆ mips_pc_is_micromips()

int mips_pc_is_micromips | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | memaddr
| ) |  |

Definition at line 1212 of file mips-tdep.c.

References is_micromips_addr(), lookup_minimal_symbol_by_pc(), make_compact_addr(), and msymbol_is_micromips().

Referenced by deal_with_atomic_sequence(), gdb_print_insn_mips(), heuristic_proc_start(), micromips_linux_sigframe_validate(), mips_adjust_breakpoint_address(), mips_breakpoint_kind_from_pc(), mips_micro_frame_base_sniffer(), mips_micro_frame_sniffer(), mips_next_pc(), mips_push_dummy_code(), mips_single_step_through_delay(), mips_skip_prologue(), and mips_stack_frame_destroyed_p().

## ◆ mips_pc_is_mips()

int mips_pc_is_mips | ( | CORE_ADDR | memaddr | ) |

Definition at line 1176 of file mips-tdep.c.

References is_mips_addr(), lookup_minimal_symbol_by_pc(), make_compact_addr(), and msymbol_is_mips().

Referenced by deal_with_atomic_sequence(), heuristic_proc_start(), mips_about_to_return(), mips_adjust_breakpoint_address(), mips_adjust_dwarf2_addr(), mips_insn32_frame_base_sniffer(), mips_insn32_frame_sniffer(), mips_linux_sigframe_validate(), and mips_single_step_through_delay().

## ◆ mips_pc_is_mips16()

int mips_pc_is_mips16 | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | memaddr
| ) |  |

Definition at line 1194 of file mips-tdep.c.

References is_mips16_addr(), lookup_minimal_symbol_by_pc(), make_compact_addr(), and msymbol_is_mips16().

Referenced by gdb_print_insn_mips(), heuristic_proc_start(), mips_breakpoint_kind_from_pc(), mips_insn16_frame_base_sniffer(), mips_insn16_frame_sniffer(), mips_next_pc(), mips_o32_return_value(), mips_o64_return_value(), mips_single_step_through_delay(), mips_skip_prologue(), and mips_stack_frame_destroyed_p().

## ◆ mips_pc_isa()

static enum mips_isa mips_pc_isa | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | memaddr
| ) |  |
| static

Definition at line 1232 of file mips-tdep.c.

References is_micromips_addr(), is_mips_addr(), ISA_MICROMIPS, ISA_MIPS, ISA_MIPS16, lookup_minimal_symbol_by_pc(), make_compact_addr(), msymbol_is_micromips(), and msymbol_is_mips16().

Referenced by mips_single_step_through_delay().

## ◆ mips_print_float_info()

static void mips_print_float_info | ( | struct gdbarch * | gdbarch,
|  | struct ui_file * | file,
|  | struct frame_info * | frame,
|  | const char * | args
| ) |  |
| static

Definition at line 6373 of file mips-tdep.c.

References default_print_float_info(), mips_regnum::fp_control_status, fprintf_filtered(), fputc_filtered(), fputs_filtered(), MIPS_FPU_DOUBLE, MIPS_FPU_NONE, MIPS_FPU_SINGLE, MIPS_FPU_TYPE, mips_regnum(), print_fpu_flags(), read_frame_register_unsigned(), and register_size().

Referenced by mips_gdbarch_init().

## ◆ mips_print_fp_register()

static void mips_print_fp_register | ( | struct ui_file * | file,
|  | struct frame_info * | frame,
|  | int | regnum
| ) |  |
| static

Definition at line 6251 of file mips-tdep.c.

References builtin_type::builtin_double, builtin_type::builtin_float, builtin_type(), fprintf_filtered(), gdbarch_num_regs(), gdbarch_register_name(), get_formatted_print_options(), get_frame_arch(), mips2_fp_compat(), mips_read_fp_register_double(), mips_read_fp_register_single(), print_scalar_formatted(), register_size(), regnum, string, and target_float_to_string().

Referenced by mips_print_register(), and print_fp_register_row().

## ◆ mips_print_register()

static void mips_print_register | ( | struct ui_file * | file,
|  | struct frame_info * | frame,
|  | int | regnum
| ) |  |
| static

Definition at line 6316 of file mips-tdep.c.

References fprintf_filtered(), fputs_filtered(), gdbarch_register_name(), get_formatted_print_options(), get_frame_arch(), get_frame_register_value(), mips_float_register_p(), MIPS_NUMREGS, mips_print_fp_register(), regnum, val_print_scalar_formatted(), value_embedded_offset(), and value_type().

Referenced by mips_print_registers_info(), and print_gp_register_row().

## ◆ mips_print_registers_info()

static void mips_print_registers_info | ( | struct gdbarch * | gdbarch,
|  | struct ui_file * | file,
|  | struct frame_info * | frame,
|  | int | regnum,
|  | int | all
| ) |  |
| static

Definition at line 6558 of file mips-tdep.c.

References _, all, error(), fprintf_filtered(), gdb_assert, gdbarch_num_pseudo_regs(), gdbarch_num_regs(), gdbarch_register_name(), mips_float_register_p(), MIPS_NUMREGS, mips_print_register(), print_fp_register_row(), print_gp_register_row(), and regnum.

Referenced by mips_gdbarch_init().

## ◆ mips_pseudo_register_read()

static enum register_status mips_pseudo_register_read | ( | struct gdbarch * | gdbarch,
|  | struct regcache * | regcache,
|  | int | cookednum,
|  | gdb_byte * | buf
| ) |  |
| static

Definition at line 740 of file mips-tdep.c.

References _, gdb_assert, gdbarch_byte_order(), gdbarch_num_regs(), internal_error(), mips64_transfers_32bit_regs_p, REG_VALID, regcache_raw_read(), regcache_raw_read_part(), regcache_raw_read_signed(), register_size(), status, and store_signed_integer().

Referenced by mips_gdbarch_init().

## ◆ mips_pseudo_register_type()

static struct type* mips_pseudo_register_type | ( | struct gdbarch * | gdbarch,
|  | int | regnum
| ) |  |
| static

Definition at line 1060 of file mips-tdep.c.

References builtin_type::builtin_data_ptr, builtin_type::builtin_func_ptr, builtin_type::builtin_int32, builtin_type(), gdb_assert, GDB_OSABI_LINUX, gdbarch_num_regs(), gdbarch_osabi(), gdbarch_register_type(), mips_abi_regsize(), MIPS_FIRST_EMBED_REGNUM, mips_float_register_p(), MIPS_LAST_EMBED_REGNUM, MIPS_PS_REGNUM, MIPS_SP_REGNUM, MIPS_ZERO_REGNUM, regnum, and TYPE_LENGTH.

Referenced by mips_gdbarch_init().

## ◆ mips_pseudo_register_write()

static void mips_pseudo_register_write | ( | struct gdbarch * | gdbarch,
|  | struct regcache * | regcache,
|  | int | cookednum,
|  | const gdb_byte * | buf
| ) |  |
| static

Definition at line 770 of file mips-tdep.c.

References _, extract_signed_integer(), gdb_assert, gdbarch_byte_order(), gdbarch_num_regs(), internal_error(), mips64_transfers_32bit_regs_p, regcache_raw_write(), regcache_raw_write_part(), regcache_raw_write_signed(), and register_size().

Referenced by mips_gdbarch_init().

## ◆ mips_push_dummy_code()

static CORE_ADDR mips_push_dummy_code | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | sp,
|  | CORE_ADDR | funaddr,
|  | struct value ** | args,
|  | int | nargs,
|  | struct type * | value_type,
|  | CORE_ADDR * | real_pc,
|  | CORE_ADDR * | bp_addr,
|  | struct regcache * | regcache
| ) |  |
| static

Definition at line 4430 of file mips-tdep.c.

References make_compact_addr(), mips_frame_align(), mips_pc_is_micromips(), and write_memory().

Referenced by mips_gdbarch_init().

## ◆ mips_read_fp_register_double()

static void mips_read_fp_register_double | ( | struct frame_info * | frame,
|  | int | regno,
|  | gdb_byte * | rare_buffer
| ) |  |
| static

Definition at line 6212 of file mips-tdep.c.

References _, deprecated_frame_register_read(), error(), gdbarch_byte_order(), gdbarch_num_regs(), gdbarch_register_name(), get_frame_arch(), internal_error(), mips2_fp_compat(), mips_read_fp_register_single(), and register_size().

Referenced by mips_print_fp_register().

## ◆ mips_read_fp_register_single()

static void mips_read_fp_register_single | ( | struct frame_info * | frame,
|  | int | regno,
|  | gdb_byte * | rare_buffer
| ) |  |
| static

Definition at line 6178 of file mips-tdep.c.

References _, deprecated_frame_register_read(), error(), gdbarch_byte_order(), gdbarch_register_name(), get_frame_arch(), offset, and register_size().

Referenced by mips_print_fp_register(), and mips_read_fp_register_double().

## ◆ mips_read_pc()

static CORE_ADDR mips_read_pc | ( | struct regcache * | regcache | ) |
| static

Definition at line 1365 of file mips-tdep.c.

References regcache::arch(), gdbarch_pc_regnum(), regcache_cooked_read_signed(), and regnum.

Referenced by mips_gdbarch_init().

## ◆ mips_register_g_packet_guesses()

static void mips_register_g_packet_guesses | ( | struct gdbarch * | gdbarch | ) |
| static

Definition at line 8047 of file mips-tdep.c.

References mips_tdesc_gp32, mips_tdesc_gp64, and register_remote_g_packet_guess().

Referenced by mips_gdbarch_init().

## ◆ mips_register_name()

static const char* mips_register_name | ( | struct gdbarch * | gdbarch,
|  | int | regno
| ) |  |
| static

Definition at line 608 of file mips-tdep.c.

References _, gdbarch_tdep::abi, gdb_assert, gdbarch_num_regs(), gdbarch_target_desc(), gdbarch_tdep(), internal_error(), mips_abi(), MIPS_ABI_N32, MIPS_ABI_N64, gdbarch_tdep::mips_processor_reg_names, NUM_MIPS_PROCESSOR_REGS, tdesc_has_registers(), and tdesc_register_name().

Referenced by mips_gdbarch_init().

## ◆ mips_register_reggroup_p()

static int mips_register_reggroup_p | ( | struct gdbarch * | gdbarch,
|  | int | regnum,
|  | struct reggroup * | reggroup
| ) |  |
| static

Definition at line 671 of file mips-tdep.c.

References all_reggroup, float_reggroup, gdbarch_num_regs(), gdbarch_register_name(), general_reggroup, register_type(), regnum, restore_reggroup, save_reggroup, TYPE_CODE, TYPE_CODE_FLT, TYPE_VECTOR, and vector_reggroup.

Referenced by mips_gdbarch_init(), and mips_tdesc_register_reggroup_p().

## ◆ mips_register_sim_regno()

static int mips_register_sim_regno | ( | struct gdbarch * | gdbarch,
|  | int | regnum
| ) |  |
| static

Definition at line 7933 of file mips-tdep.c.

References gdb_assert, gdbarch_num_regs(), gdbarch_register_name(), LEGACY_SIM_REGNO_IGNORE, and regnum.

Referenced by mips_gdbarch_init().

## ◆ mips_register_to_value()

static int mips_register_to_value | ( | struct frame_info * | frame,
|  | int | regnum,
|  | struct type * | type,
|  | gdb_byte * | to,
|  | int * | optimizedp,
|  | int * | unavailablep
| ) |  |
| static

Definition at line 910 of file mips-tdep.c.

References _, gdbarch_byte_order(), get_frame_arch(), get_frame_register(), get_frame_register_bytes(), internal_error(), mips_convert_register_float_case_p(), mips_convert_register_gpreg_case_p(), offset, regnum, and TYPE_LENGTH.

Referenced by mips_gdbarch_init().

## ◆ mips_register_type()

static struct type * mips_register_type | ( | struct gdbarch * | gdbarch,
|  | int | regnum
| ) |  |
| static

Definition at line 1003 of file mips-tdep.c.

References builtin_type::builtin_double, builtin_type::builtin_float, builtin_type::builtin_int32, builtin_type::builtin_int64, builtin_type(), gdb_assert, GDB_OSABI_LINUX, gdbarch_num_regs(), gdbarch_osabi(), mips64_transfers_32bit_regs_p, mips_abi_regsize(), MIPS_FIRST_EMBED_REGNUM, mips_float_register_p(), mips_isa_regsize(), MIPS_LAST_EMBED_REGNUM, and regnum.

Referenced by mips_gdbarch_init().

## ◆ mips_regnum()

const struct mips_regnum* mips_regnum | ( | struct gdbarch * | gdbarch | ) |

Definition at line 218 of file mips-tdep.c.

References gdbarch_tdep(), and gdbarch_tdep::regnum.

Referenced by micromips_bc1_pc(), micromips_next_pc(), micromips_scan_prologue(), mips16_scan_prologue(), mips32_bc1_pc(), mips32_next_pc(), mips32_scan_prologue(), mips64_fbsd_sigframe_init(), mips64_linux_register_addr(), mips64_linux_regsets_fetch_registers(), mips64_linux_regsets_store_registers(), mips64obsd_sigframe_init(), mips_dwarf_dwarf2_ecoff_reg_to_regnum(), mips_eabi_return_value(), mips_fbsd_collect_fpregs(), mips_fbsd_collect_gregs(), mips_fbsd_sigframe_init(), mips_fbsd_supply_fpregs(), mips_fbsd_supply_gregs(), mips_fpa0_regnum(), mips_gdbarch_init(), mips_linux_n32n64_sigframe_init(), mips_linux_o32_sigframe_init(), mips_linux_register_addr(), mips_print_float_info(), mips_sde_frame_cache(), mips_stab_reg_to_regnum(), mipsnbsd_fill_fpreg(), and mipsnbsd_supply_fpreg().

## ◆ mips_segment_boundary()

static CORE_ADDR mips_segment_boundary | ( | CORE_ADDR | bpaddr | ) |
| static

Definition at line 7305 of file mips-tdep.c.

References CORE_ADDR_MAX.

Referenced by mips_adjust_breakpoint_address().

## ◆ mips_single_step_through_delay()

static int mips_single_step_through_delay | ( | struct gdbarch * | gdbarch,
|  | struct frame_info * | frame
| ) |  |
| static

Definition at line 6591 of file mips-tdep.c.

References breakpoint_here_p(), get_frame_address_space(), get_frame_pc(), micromips_insn_at_pc_has_delay_slot(), mips16_insn_at_pc_has_delay_slot(), mips32_insn_at_pc_has_delay_slot(), mips_fetch_instruction(), mips_insn_size(), mips_pc_is_micromips(), mips_pc_is_mips(), mips_pc_is_mips16(), mips_pc_isa(), no_breakpoint_here, and size.

Referenced by mips_gdbarch_init().

## ◆ mips_skip_mips16_trampoline_code()

static CORE_ADDR mips_skip_mips16_trampoline_code | ( | struct frame_info * | frame,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 7679 of file mips-tdep.c.

References find_pc_partial_function(), gdbarch_num_regs(), get_frame_arch(), get_frame_register_signed(), mips_get_mips16_fn_stub_pc(), mips_is_stub_mode(), mips_is_stub_suffix(), MIPS_RA_REGNUM, MIPS_S2_REGNUM, mips_str_call_stub, mips_str_fn_stub, mips_str_mips16_call_stub, mips_str_mips16_ret_stub, MIPS_V0_REGNUM, name, and startswith().

Referenced by mips_skip_trampoline_code().

## ◆ mips_skip_pic_trampoline_code()

static CORE_ADDR mips_skip_pic_trampoline_code | ( | struct frame_info * | frame,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 7807 of file mips-tdep.c.

References BMSYMBOL_VALUE_ADDRESS, gdbarch::byte_order, extract_unsigned_integer(), gdbarch_byte_order(), get_frame_arch(), lookup_minimal_symbol_by_pc(), bound_minimal_symbol::minsym, MSYMBOL_LINKAGE_NAME, MSYMBOL_SIZE, startswith(), and target_read_memory().

Referenced by mips_skip_trampoline_code().

## ◆ mips_skip_prologue()

static CORE_ADDR mips_skip_prologue | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 6627 of file mips-tdep.c.

References find_pc_partial_function(), micromips_scan_prologue(), mips16_scan_prologue(), mips32_scan_prologue(), mips_pc_is_micromips(), mips_pc_is_mips16(), and skip_prologue_using_sal().

Referenced by mips_gdbarch_init().

## ◆ mips_skip_trampoline_code()

static CORE_ADDR mips_skip_trampoline_code | ( | struct frame_info * | frame,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 7860 of file mips-tdep.c.

References find_solib_trampoline_target(), mips_skip_mips16_trampoline_code(), and mips_skip_pic_trampoline_code().

Referenced by mips_gdbarch_init().

## ◆ mips_software_single_step()

std::vector<CORE_ADDR> mips_software_single_step | ( | struct regcache * | regcache | ) |

Definition at line 4155 of file mips-tdep.c.

References regcache::arch(), deal_with_atomic_sequence(), mips_next_pc(), and regcache_read_pc().

Referenced by mips_fbsd_init_abi(), mips_linux_init_abi(), and mipsnbsd_init_abi().

## ◆ mips_stab_reg_to_regnum()

static int mips_stab_reg_to_regnum | ( | struct gdbarch * | gdbarch,
|  | int | num
| ) |  |
| static

Definition at line 7891 of file mips-tdep.c.

References mips_regnum::dspacc, mips_regnum::fp0, gdbarch_num_regs(), mips_regnum::hi, mips_regnum::lo, mips_regnum(), and regnum.

Referenced by mips_gdbarch_init().

## ◆ mips_stack_frame_destroyed_p()

static int mips_stack_frame_destroyed_p | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 6843 of file mips-tdep.c.

References micromips_stack_frame_destroyed_p(), mips16_stack_frame_destroyed_p(), mips32_stack_frame_destroyed_p(), mips_pc_is_micromips(), and mips_pc_is_mips16().

Referenced by mips_gdbarch_init().

## ◆ mips_stub_frame_base_address()

static CORE_ADDR mips_stub_frame_base_address | ( | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 3816 of file mips-tdep.c.

References mips_stub_frame_cache(), trad_frame_cache::this_frame, and trad_frame_get_this_base().

## ◆ mips_stub_frame_base_sniffer()

static const struct frame_base* mips_stub_frame_base_sniffer | ( | struct frame_info * | this_frame | ) |
| static

Definition at line 3833 of file mips-tdep.c.

References mips_stub_frame_base, mips_stub_frame_sniffer(), and mips_stub_frame_unwind.

Referenced by mips_gdbarch_init().

## ◆ mips_stub_frame_cache()

static struct trad_frame_cache* mips_stub_frame_cache | ( | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 3727 of file mips-tdep.c.

References find_pc_partial_function(), frame_id_build(), gdbarch_num_regs(), gdbarch_pc_regnum(), get_frame_arch(), get_frame_pc(), get_frame_register_signed(), MIPS_RA_REGNUM, MIPS_SP_REGNUM, gdbarch::num_regs, trad_frame_cache_zalloc(), trad_frame_set_id(), trad_frame_set_reg_realreg(), and trad_frame_set_this_base().

Referenced by mips_stub_frame_base_address(), mips_stub_frame_prev_register(), and mips_stub_frame_this_id().

## ◆ mips_stub_frame_prev_register()

static struct value* mips_stub_frame_prev_register | ( | struct frame_info * | this_frame,
|  | void ** | this_cache,
|  | int | regnum
| ) |  |
| static

Definition at line 3771 of file mips-tdep.c.

References mips_stub_frame_cache(), regnum, trad_frame_cache::this_frame, and trad_frame_get_register().

## ◆ mips_stub_frame_sniffer()

static int mips_stub_frame_sniffer | ( | const struct frame_unwind * | self,
|  | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 3780 of file mips-tdep.c.

References dummy, get_frame_address_in_block(), get_frame_pc(), in_mips_stubs_section(), in_plt_section(), lookup_minimal_symbol_by_pc(), bound_minimal_symbol::minsym, MSYMBOL_LINKAGE_NAME, startswith(), target_read_memory(), and trad_frame_cache::this_frame.

Referenced by mips_stub_frame_base_sniffer().

## ◆ mips_stub_frame_this_id()

static void mips_stub_frame_this_id | ( | struct frame_info * | this_frame,
|  | void ** | this_cache,
|  | struct frame_id * | this_id
| ) |  |
| static

Definition at line 3762 of file mips-tdep.c.

References mips_stub_frame_cache(), trad_frame_cache::this_frame, trad_frame_cache::this_id, and trad_frame_get_id().

## ◆ mips_sw_breakpoint_from_kind()

static const gdb_byte* mips_sw_breakpoint_from_kind | ( | struct gdbarch * | gdbarch,
|  | int | kind,
|  | int * | size
| ) |  |
| static

Definition at line 7060 of file mips-tdep.c.

References big_breakpoint, gdbarch::byte_order_for_code, gdb_assert_not_reached, gdbarch_byte_order_for_code(), little_breakpoint, MIPS_BP_KIND_MICROMIPS16, MIPS_BP_KIND_MICROMIPS32, MIPS_BP_KIND_MIPS16, MIPS_BP_KIND_MIPS32, and size.

Referenced by mips_gdbarch_init().

## ◆ mips_tdesc_register_reggroup_p()

static int mips_tdesc_register_reggroup_p | ( | struct gdbarch * | gdbarch,
|  | int | regnum,
|  | struct reggroup * | reggroup
| ) |  |
| static

Definition at line 711 of file mips-tdep.c.

References gdbarch_num_regs(), mips_register_reggroup_p(), regnum, and tdesc_register_in_reggroup_p().

Referenced by mips_gdbarch_init().

## ◆ mips_type_needs_double_align()

static int mips_type_needs_double_align | ( | struct type * | type | ) |
| static

Definition at line 4394 of file mips-tdep.c.

References TYPE_CODE, TYPE_CODE_FLT, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_FIELD_TYPE, TYPE_LENGTH, and TYPE_NFIELDS.

Referenced by mips_o32_push_dummy_call().

## ◆ mips_unmake_compact_addr()

CORE_ADDR mips_unmake_compact_addr | ( | CORE_ADDR | addr | ) |

Definition at line 372 of file mips-tdep.c.

References unmake_compact_addr().

Referenced by micromips_linux_sigframe_validate().

## ◆ mips_unwind_pc()

static CORE_ADDR mips_unwind_pc | ( | struct gdbarch * | gdbarch,
|  | struct frame_info * | next_frame
| ) |  |
| static

Definition at line 1375 of file mips-tdep.c.

References frame_relative_level(), frame_unwind_register_signed(), gdbarch_num_regs(), gdbarch_pc_regnum(), mips_in_frame_stub(), MIPS_RA_REGNUM, and MIPS_S2_REGNUM.

Referenced by mips_gdbarch_init().

## ◆ mips_unwind_sp()

static CORE_ADDR mips_unwind_sp | ( | struct gdbarch * | gdbarch,
|  | struct frame_info * | next_frame
| ) |  |
| static

Definition at line 1397 of file mips-tdep.c.

References frame_unwind_register_signed(), gdbarch_num_regs(), and MIPS_SP_REGNUM.

Referenced by mips_gdbarch_init().

## ◆ mips_value_to_register()

static void mips_value_to_register | ( | struct frame_info * | frame,
|  | int | regnum,
|  | struct type * | type,
|  | const gdb_byte * | from
| ) |  |
| static

Definition at line 952 of file mips-tdep.c.

References _, gdbarch_byte_order(), get_frame_arch(), internal_error(), mips_convert_register_float_case_p(), mips_convert_register_gpreg_case_p(), put_frame_register(), put_frame_register_bytes(), regnum, store_signed_integer(), and TYPE_LENGTH.

Referenced by mips_gdbarch_init().

## ◆ mips_virtual_frame_pointer()

static void mips_virtual_frame_pointer | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc,
|  | int * | reg,
|  | LONGEST * | offset
| ) |  |
| static

Definition at line 7968 of file mips-tdep.c.

References MIPS_SP_REGNUM, and offset.

Referenced by mips_gdbarch_init().

## ◆ mips_write_pc()

void mips_write_pc | ( | struct regcache * | regcache,
|  | CORE_ADDR | pc
| ) |  |

Definition at line 1421 of file mips-tdep.c.

References regcache::arch(), gdbarch_pc_regnum(), regcache_cooked_write_unsigned(), and regnum.

Referenced by mips_gdbarch_init(), and mips_linux_write_pc().

## ◆ mips_xfer_register()

static void mips_xfer_register | ( | struct gdbarch * | gdbarch,
|  | struct regcache * | regcache,
|  | int | reg_num,
|  | int | length,
|  | enum bfd_endian | endian,
|  | gdb_byte * | in,
|  | const gdb_byte * | out,
|  | int | buf_offset
| ) |  |
| static

Definition at line 477 of file mips-tdep.c.

References _, fprintf_unfiltered(), gdb_assert, gdb_stderr, gdb_stdlog, gdbarch_num_regs(), internal_error(), mips_debug, reg_offset, regcache_cooked_read_part(), regcache_cooked_write_part(), and register_size().

Referenced by mips_eabi_return_value(), mips_n32n64_return_value(), mips_o32_return_value(), and mips_o64_return_value().

## ◆ msymbol_is_micromips()

static int msymbol_is_micromips | ( | struct minimal_symbol * | msym | ) |
| static

Definition at line 437 of file mips-tdep.c.

References MSYMBOL_TARGET_FLAG_MICROMIPS.

Referenced by mips_pc_is_micromips(), and mips_pc_isa().

## ◆ msymbol_is_mips()

static int msymbol_is_mips | ( | struct minimal_symbol * | msym | ) |
| static

Definition at line 420 of file mips-tdep.c.

References MSYMBOL_TARGET_FLAG_MICROMIPS, and MSYMBOL_TARGET_FLAG_MIPS16.

Referenced by mips_make_symbol_special(), and mips_pc_is_mips().

## ◆ msymbol_is_mips16()

static int msymbol_is_mips16 | ( | struct minimal_symbol * | msym | ) |
| static

Definition at line 429 of file mips-tdep.c.

References MSYMBOL_TARGET_FLAG_MIPS16.

Referenced by mips_pc_is_mips16(), and mips_pc_isa().

## ◆ print_fp_register_row()

static int print_fp_register_row | ( | struct ui_file * | file,
|  | struct frame_info * | frame,
|  | int | regnum
| ) |  |
| static

Definition at line 6441 of file mips-tdep.c.

References fprintf_filtered(), mips_print_fp_register(), and regnum.

Referenced by mips_print_registers_info().

## ◆ print_fpu_flags()

static void print_fpu_flags | ( | struct ui_file * | file,
|  | int | flags
| ) |  |
| static

Definition at line 6352 of file mips-tdep.c.

References flags, fputc_filtered(), and fputs_filtered().

Referenced by mips_print_float_info().

## ◆ print_gp_register_row()

static int print_gp_register_row | ( | struct ui_file * | file,
|  | struct frame_info * | frame,
|  | int | start_regnum
| ) |  |
| static

Definition at line 6454 of file mips-tdep.c.

References fprintf_filtered(), gdbarch_byte_order(), gdbarch_num_pseudo_regs(), gdbarch_num_regs(), gdbarch_register_name(), get_frame_arch(), get_frame_register_value(), mips_abi_regsize(), mips_float_register_p(), MIPS_NUMREGS, mips_print_register(), register_size(), regnum, value_contents_all(), value_entirely_available(), and value_optimized_out().

Referenced by mips_print_registers_info().

## ◆ reinit_frame_cache_sfunc()

static void reinit_frame_cache_sfunc | ( | const char * | args,
|  | int | from_tty,
|  | struct cmd_list_element * | c
| ) |  |
| static

Definition at line 6969 of file mips-tdep.c.

References reinit_frame_cache().

Referenced by _initialize_mips_tdep().

## ◆ reset_saved_regs()

static void reset_saved_regs | ( | struct gdbarch * | gdbarch,
|  | struct mips_frame_cache * | this_cache
| ) |  |
| static

Definition at line 3356 of file mips-tdep.c.

References trad_frame_saved_reg::addr, gdbarch_num_regs(), gdbarch::num_regs, and mips_frame_cache::saved_regs.

Referenced by mips32_scan_prologue().

## ◆ set_mips64_transfers_32bit_regs()

static void set_mips64_transfers_32bit_regs | ( | const char * | args,
|  | int | from_tty,
|  | struct cmd_list_element * | c
| ) |  |
| static

Definition at line 856 of file mips-tdep.c.

References _, error(), gdbarch_info_init(), gdbarch_update_p(), and mips64_transfers_32bit_regs_p.

Referenced by _initialize_mips_tdep().

## ◆ set_mips_command()

static void set_mips_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 6863 of file mips-tdep.c.

References all_commands, gdb_stdout, help_list(), printf_unfiltered(), and setmipscmdlist.

Referenced by _initialize_mips_tdep().

## ◆ set_mipsfpu_auto_command()

static void set_mipsfpu_auto_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 6960 of file mips-tdep.c.

References mips_fpu_type_auto.

Referenced by _initialize_mips_tdep().

## ◆ set_mipsfpu_command()

static void set_mipsfpu_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 6910 of file mips-tdep.c.

References printf_unfiltered(), and show_mipsfpu_command().

Referenced by _initialize_mips_tdep().

## ◆ set_mipsfpu_double_command()

static void set_mipsfpu_double_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 6932 of file mips-tdep.c.

References _, gdbarch_info_init(), gdbarch_update_p(), internal_error(), MIPS_FPU_DOUBLE, and mips_fpu_type_auto.

Referenced by _initialize_mips_tdep().

## ◆ set_mipsfpu_none_command()

static void set_mipsfpu_none_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 6946 of file mips-tdep.c.

References _, gdbarch_info_init(), gdbarch_update_p(), internal_error(), MIPS_FPU_NONE, and mips_fpu_type_auto.

Referenced by _initialize_mips_tdep().

## ◆ set_mipsfpu_single_command()

static void set_mipsfpu_single_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 6918 of file mips-tdep.c.

References _, gdbarch_info_init(), gdbarch_update_p(), internal_error(), MIPS_FPU_SINGLE, and mips_fpu_type_auto.

Referenced by _initialize_mips_tdep().

## ◆ set_reg_offset()

static void set_reg_offset | ( | struct gdbarch * | gdbarch,
|  | struct mips_frame_cache * | this_cache,
|  | int | regnum,
|  | CORE_ADDR | offset
| ) |  |
| static

Definition at line 2417 of file mips-tdep.c.

References trad_frame_saved_reg::addr, gdbarch_num_regs(), offset, regnum, and mips_frame_cache::saved_regs.

Referenced by micromips_scan_prologue(), mips16_scan_prologue(), and mips32_scan_prologue().

## ◆ show_mask_address()

static void show_mask_address | ( | struct ui_file * | file,
|  | int | from_tty,
|  | struct cmd_list_element * | c,
|  | const char * | value
| ) |  |
| static

Definition at line 1147 of file mips-tdep.c.

References _, AUTO_BOOLEAN_AUTO, AUTO_BOOLEAN_FALSE, AUTO_BOOLEAN_TRUE, deprecated_show_value_hack, gdbarch_tdep(), internal_error(), mask_address_var, mips_mask_address_p(), printf_filtered(), and target_gdbarch().

Referenced by _initialize_mips_tdep().

## ◆ show_mips_abi()

static void show_mips_abi | ( | struct ui_file * | file,
|  | int | from_tty,
|  | struct cmd_list_element * | ignored_cmd,
|  | const char * | ignored_value
| ) |  |
| static

Definition at line 8840 of file mips-tdep.c.

References fprintf_filtered(), gdbarch_bfd_arch_info(), global_mips_abi(), mips_abi(), mips_abi_strings, MIPS_ABI_UNKNOWN, and target_gdbarch().

Referenced by _initialize_mips_tdep().

## ◆ show_mips_command()

static void show_mips_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 6857 of file mips-tdep.c.

References all_commands, gdb_stdout, help_list(), and showmipscmdlist.

Referenced by _initialize_mips_tdep().

## ◆ show_mips_compression()

static void show_mips_compression | ( | struct ui_file * | file,
|  | int | from_tty,
|  | struct cmd_list_element * | c,
|  | const char * | value
| ) |  |
| static

Definition at line 8880 of file mips-tdep.c.

References _, and fprintf_filtered().

Referenced by _initialize_mips_tdep().

## ◆ show_mipsfpu_command()

static void show_mipsfpu_command | ( | const char * | args,
|  | int | from_tty
| ) |  |
| static

Definition at line 6873 of file mips-tdep.c.

References _, gdbarch_bfd_arch_info(), internal_error(), MIPS_FPU_DOUBLE, MIPS_FPU_NONE, MIPS_FPU_SINGLE, MIPS_FPU_TYPE, mips_fpu_type_auto, printf_unfiltered(), and target_gdbarch().

Referenced by _initialize_mips_tdep(), and set_mipsfpu_command().

## ◆ unmake_compact_addr()

static CORE_ADDR unmake_compact_addr | ( | CORE_ADDR | addr | ) |
| static

Definition at line 355 of file mips-tdep.c.

Referenced by fetch_mips_16(), mips_adjust_breakpoint_address(), mips_adjust_dwarf2_addr(), mips_breakpoint_kind_from_pc(), mips_fetch_instruction(), and mips_unmake_compact_addr().

## ◆ unpack_mips16()

static void unpack_mips16 | ( | struct gdbarch * | gdbarch,
|  | CORE_ADDR | pc,
|  | unsigned int | extension,
|  | unsigned int | inst,
|  | enum mips16_inst_fmts | insn_format,
|  | struct upk_mips16 * | upk
| ) |  |
| static

Definition at line 2145 of file mips-tdep.c.

References _, extended_offset(), i8type, internal_error(), ISA_MIPS16, itype, jalxtype, mips_fetch_instruction(), offset, upk_mips16::offset, upk_mips16::regx, upk_mips16::regy, and ritype.

Referenced by extended_mips16_next_pc().

## ◆ value_of_mips_user_reg()

static struct value* value_of_mips_user_reg | ( | struct frame_info * | frame,
|  | const void * | baton
| ) |  |
| static

Definition at line 8064 of file mips-tdep.c.

References value_of_register().

Referenced by mips_gdbarch_init().

## Variable Documentation

## ◆ heuristic_fence_post

int heuristic_fence_post = 0
| static

Definition at line 847 of file mips-tdep.c.

Referenced by _initialize_mips_tdep(), and heuristic_proc_start().

## ◆ mask_address_var

enum auto_boolean mask_address_var = AUTO_BOOLEAN_AUTO

Definition at line 1125 of file mips-tdep.c.

Referenced by _initialize_mips_tdep(), mips_mask_address_p(), and show_mask_address().

## ◆ mips64_transfers_32bit_regs_p

int mips64_transfers_32bit_regs_p = 0
| static

Definition at line 853 of file mips-tdep.c.

Referenced by _initialize_mips_tdep(), mips_ax_pseudo_register_push_stack(), mips_gdbarch_init(), mips_pseudo_register_read(), mips_pseudo_register_write(), mips_register_type(), and set_mips64_transfers_32bit_regs().

## ◆ mips_abi_string

const char* mips_abi_string
| static

Definition at line 99 of file mips-tdep.c.

Referenced by _initialize_mips_tdep(), and global_mips_abi().

## ◆ mips_abi_strings

const char* const mips_abi_strings[]
| static

Initial value:
= {
"auto",
"n32",
"o32",
"n64",
"o64",
"eabi32",
"eabi64",
NULL
}

Definition at line 101 of file mips-tdep.c.

Referenced by _initialize_mips_tdep(), global_mips_abi(), mips_dump_tdep(), and show_mips_abi().

## ◆ mips_compression_micromips

const char mips_compression_micromips[] = "micromips"
| static

Definition at line 133 of file mips-tdep.c.

## ◆ mips_compression_mips16

const char mips_compression_mips16[] = "mips16"
| static

Definition at line 132 of file mips-tdep.c.

## ◆ mips_compression_string

const char* mips_compression_string = mips_compression_mips16
| static

Definition at line 141 of file mips-tdep.c.

Referenced by _initialize_mips_tdep(), global_mips_compression(), and mips_gdbarch_init().

## ◆ mips_compression_strings

const char* const mips_compression_strings[]
| static

Initial value:
=
{
mips_compression_mips16,
mips_compression_micromips,
NULL
}
mips_compression_mips16
static const char mips_compression_mips16[]
Definition: mips-tdep.c:132
mips_compression_micromips
static const char mips_compression_micromips[]
Definition: mips-tdep.c:133

Definition at line 134 of file mips-tdep.c.

Referenced by _initialize_mips_tdep(), global_mips_compression(), and mips_gdbarch_init().

## ◆ mips_debug

unsigned int mips_debug = 0
| static

Definition at line 207 of file mips-tdep.c.

Referenced by _initialize_mips_tdep(), mips_eabi_push_dummy_call(), mips_eabi_return_value(), mips_n32n64_push_dummy_call(), mips_n32n64_return_value(), mips_o32_push_dummy_call(), mips_o32_return_value(), mips_o64_push_dummy_call(), mips_o64_return_value(), and mips_xfer_register().

## ◆ mips_fpu_type

enum mips_fpu_type mips_fpu_type = MIPS_DEFAULT_FPU_TYPE
| static

Definition at line 205 of file mips-tdep.c.

Referenced by mips_gdbarch_init().

## ◆ mips_fpu_type_auto

int mips_fpu_type_auto = 1
| static

Definition at line 204 of file mips-tdep.c.

Referenced by mips_gdbarch_init(), set_mipsfpu_auto_command(), set_mipsfpu_double_command(), set_mipsfpu_none_command(), set_mipsfpu_single_command(), and show_mipsfpu_command().

## ◆ mips_generic_reg_names

const char* mips_generic_reg_names[NUM_MIPS_PROCESSOR_REGS]
| static

Initial value:
= {
"sr", "lo", "hi", "bad", "cause", "pc",
"f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7",
"f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15",
"f16", "f17", "f18", "f19", "f20", "f21", "f22", "f23",
"f24", "f25", "f26", "f27", "f28", "f29", "f30", "f31",
"fsr", "fir",
}

Definition at line 573 of file mips-tdep.c.

Referenced by mips_gdbarch_init().

## ◆ mips_insn16_frame_base

const struct frame_base mips_insn16_frame_base
| static

Initial value:
=
{
&mips_insn16_frame_unwind,
mips_insn16_frame_base_address,
mips_insn16_frame_base_address,
mips_insn16_frame_base_address
}
mips_insn16_frame_unwind
static const struct frame_unwind mips_insn16_frame_unwind
Definition: mips-tdep.c:2877
mips_insn16_frame_base_address
static CORE_ADDR mips_insn16_frame_base_address(struct frame_info *this_frame, void **this_cache)
Definition: mips-tdep.c:2888

Definition at line 2896 of file mips-tdep.c.

Referenced by mips_insn16_frame_base_sniffer().

## ◆ mips_insn16_frame_unwind

const struct frame_unwind mips_insn16_frame_unwind
| static

Initial value:
=
{
NORMAL_FRAME,
default_frame_unwind_stop_reason,
mips_insn16_frame_this_id,
mips_insn16_frame_prev_register,
NULL,
mips_insn16_frame_sniffer
}
mips_insn16_frame_this_id
static void mips_insn16_frame_this_id(struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
Definition: mips-tdep.c:2846
mips_insn16_frame_sniffer
static int mips_insn16_frame_sniffer(const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
Definition: mips-tdep.c:2867
NORMAL_FRAME
Definition: frame.h:244
default_frame_unwind_stop_reason
enum unwind_stop_reason default_frame_unwind_stop_reason(struct frame_info *this_frame, void **this_cache)
Definition: frame-unwind.c:184
mips_insn16_frame_prev_register
static struct value * mips_insn16_frame_prev_register(struct frame_info *this_frame, void **this_cache, int regnum)
Definition: mips-tdep.c:2858

Definition at line 2877 of file mips-tdep.c.

Referenced by mips_gdbarch_init().

## ◆ mips_insn32_frame_base

const struct frame_base mips_insn32_frame_base
| static

Initial value:
=
{
&mips_insn32_frame_unwind,
mips_insn32_frame_base_address,
mips_insn32_frame_base_address,
mips_insn32_frame_base_address
}
mips_insn32_frame_base_address
static CORE_ADDR mips_insn32_frame_base_address(struct frame_info *this_frame, void **this_cache)
Definition: mips-tdep.c:3700
mips_insn32_frame_unwind
static const struct frame_unwind mips_insn32_frame_unwind
Definition: mips-tdep.c:3689

Definition at line 3708 of file mips-tdep.c.

Referenced by mips_insn32_frame_base_sniffer().

## ◆ mips_insn32_frame_unwind

const struct frame_unwind mips_insn32_frame_unwind
| static

Initial value:
=
{
NORMAL_FRAME,
default_frame_unwind_stop_reason,
mips_insn32_frame_this_id,
mips_insn32_frame_prev_register,
NULL,
mips_insn32_frame_sniffer
}
mips_insn32_frame_prev_register
static struct value * mips_insn32_frame_prev_register(struct frame_info *this_frame, void **this_cache, int regnum)
Definition: mips-tdep.c:3671
NORMAL_FRAME
Definition: frame.h:244
mips_insn32_frame_this_id
static void mips_insn32_frame_this_id(struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
Definition: mips-tdep.c:3659
default_frame_unwind_stop_reason
enum unwind_stop_reason default_frame_unwind_stop_reason(struct frame_info *this_frame, void **this_cache)
Definition: frame-unwind.c:184
mips_insn32_frame_sniffer
static int mips_insn32_frame_sniffer(const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
Definition: mips-tdep.c:3680

Definition at line 3689 of file mips-tdep.c.

Referenced by mips_gdbarch_init().

## ◆ mips_linux_reg_names

const char* mips_linux_reg_names[NUM_MIPS_PROCESSOR_REGS]
| static

Initial value:
= {
"sr", "lo", "hi", "bad", "cause", "pc",
"f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7",
"f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15",
"f16", "f17", "f18", "f19", "f20", "f21", "f22", "f23",
"f24", "f25", "f26", "f27", "f28", "f29", "f30", "f31",
"fsr", "fir"
}

Definition at line 596 of file mips-tdep.c.

Referenced by mips_gdbarch_init().

## ◆ mips_micro_frame_base

const struct frame_base mips_micro_frame_base
| static

Initial value:
=
{
&mips_micro_frame_unwind,
mips_micro_frame_base_address,
mips_micro_frame_base_address,
mips_micro_frame_base_address
}
mips_micro_frame_base_address
static CORE_ADDR mips_micro_frame_base_address(struct frame_info *this_frame, void **this_cache)
Definition: mips-tdep.c:3324
mips_micro_frame_unwind
static const struct frame_unwind mips_micro_frame_unwind
Definition: mips-tdep.c:3313

Definition at line 3332 of file mips-tdep.c.

Referenced by mips_micro_frame_base_sniffer().

## ◆ mips_micro_frame_unwind

const struct frame_unwind mips_micro_frame_unwind
| static

Initial value:
=
{
NORMAL_FRAME,
default_frame_unwind_stop_reason,
mips_micro_frame_this_id,
mips_micro_frame_prev_register,
NULL,
mips_micro_frame_sniffer
}
NORMAL_FRAME
Definition: frame.h:244
mips_micro_frame_prev_register
static struct value * mips_micro_frame_prev_register(struct frame_info *this_frame, void **this_cache, int regnum)
Definition: mips-tdep.c:3293
mips_micro_frame_sniffer
static int mips_micro_frame_sniffer(const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
Definition: mips-tdep.c:3302
default_frame_unwind_stop_reason
enum unwind_stop_reason default_frame_unwind_stop_reason(struct frame_info *this_frame, void **this_cache)
Definition: frame-unwind.c:184
mips_micro_frame_this_id
static void mips_micro_frame_this_id(struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
Definition: mips-tdep.c:3281

Definition at line 3313 of file mips-tdep.c.

Referenced by mips_gdbarch_init().

## ◆ mips_n32_n64_aliases

const struct register_alias mips_n32_n64_aliases[]

Initial value:
= {
{ "ta0", 8 },
{ "ta1", 9 },
{ "ta2", 10 },
{ "ta3", 11 }
}

Definition at line 159 of file mips-tdep.c.

Referenced by mips_gdbarch_init().

## ◆ mips_numeric_register_aliases

const struct register_alias mips_numeric_register_aliases[]

Initial value:
= {
#define R(n)
R(0), R(1), R(2), R(3), R(4), R(5), R(6), R(7),
R(8), R(9), R(10), R(11), R(12), R(13), R(14), R(15),
R(16), R(17), R(18), R(19), R(20), R(21), R(22), R(23),
R(24), R(25), R(26), R(27), R(28), R(29), R(30), R(31),
}
R
#define R(n)

Definition at line 192 of file mips-tdep.c.

Referenced by mips_gdbarch_init().

## ◆ mips_o32_aliases

const struct register_alias mips_o32_aliases[]

Initial value:
= {
{ "ta0", 12 },
{ "ta1", 13 },
{ "ta2", 14 },
{ "ta3", 15 }
}

Definition at line 151 of file mips-tdep.c.

Referenced by mips_gdbarch_init().

## ◆ mips_pdr_data

const struct objfile_data* mips_pdr_data
| static

Definition at line 61 of file mips-tdep.c.

Referenced by _initialize_mips_tdep().

## ◆ mips_reg3_to_reg

const signed char mips_reg3_to_reg[8] = { 16, 17, 2, 3, 4, 5, 6, 7 }
| static

Definition at line 841 of file mips-tdep.c.

Referenced by extended_mips16_next_pc(), micromips_next_pc(), and mips16_scan_prologue().

## ◆ mips_register_aliases

const struct register_alias mips_register_aliases[]

Initial value:
= {
#define R(n)
R(0), R(1), R(2), R(3), R(4), R(5), R(6), R(7),
R(8), R(9), R(10), R(11), R(12), R(13), R(14), R(15),
R(16), R(17), R(18), R(19), R(20), R(21), R(22), R(23),
R(24), R(25), R(26), R(27), R(28), R(29), R(30), R(31),
{ "kt0", 26 },
{ "kt1", 27 },
{ "sr", MIPS_PS_REGNUM },
{ "bad", MIPS_EMBED_BADVADDR_REGNUM },
{ "fsr", MIPS_EMBED_FP0_REGNUM + 32 }
}
R
#define R(n)
MIPS_EMBED_BADVADDR_REGNUM
Definition: mips-tdep.h:137
MIPS_EMBED_FP0_REGNUM
Definition: mips-tdep.h:140
MIPS_PS_REGNUM
Definition: mips-tdep.h:134

Definition at line 167 of file mips-tdep.c.

Referenced by mips_gdbarch_init().

## ◆ mips_str_call_fp_stub

const char mips_str_call_fp_stub[] = "__call_stub_fp_"
| static

Definition at line 1327 of file mips-tdep.c.

Referenced by mips_in_return_stub().

## ◆ mips_str_call_stub

const char mips_str_call_stub[] = "__call_stub_"
| static

Definition at line 1328 of file mips-tdep.c.

Referenced by mips_in_frame_stub(), and mips_skip_mips16_trampoline_code().

## ◆ mips_str_fn_stub

const char mips_str_fn_stub[] = "__fn_stub_"
| static

Definition at line 1329 of file mips-tdep.c.

Referenced by mips_in_frame_stub(), and mips_skip_mips16_trampoline_code().

## ◆ mips_str_mips16_call_stub

const char mips_str_mips16_call_stub[] = "__mips16_call_stub_"
| static

Definition at line 1325 of file mips-tdep.c.

Referenced by mips_in_frame_stub(), mips_in_return_stub(), and mips_skip_mips16_trampoline_code().

## ◆ mips_str_mips16_ret_stub

const char mips_str_mips16_ret_stub[] = "__mips16_ret_"
| static

Definition at line 1326 of file mips-tdep.c.

Referenced by mips_in_return_stub(), and mips_skip_mips16_trampoline_code().

## ◆ mips_str_pic

const char mips_str_pic[] = ".pic."
| static

Definition at line 1333 of file mips-tdep.c.

Referenced by mips_in_return_stub().

## ◆ mips_stub_frame_base

const struct frame_base mips_stub_frame_base
| static

Initial value:
=
{
&mips_stub_frame_unwind,
mips_stub_frame_base_address,
mips_stub_frame_base_address,
mips_stub_frame_base_address
}
mips_stub_frame_base_address
static CORE_ADDR mips_stub_frame_base_address(struct frame_info *this_frame, void **this_cache)
Definition: mips-tdep.c:3816
mips_stub_frame_unwind
static const struct frame_unwind mips_stub_frame_unwind
Definition: mips-tdep.c:3805

Definition at line 3824 of file mips-tdep.c.

Referenced by mips_stub_frame_base_sniffer().

## ◆ mips_stub_frame_unwind

const struct frame_unwind mips_stub_frame_unwind
| static

Initial value:
=
{
NORMAL_FRAME,
default_frame_unwind_stop_reason,
mips_stub_frame_this_id,
mips_stub_frame_prev_register,
NULL,
mips_stub_frame_sniffer
}
mips_stub_frame_prev_register
static struct value * mips_stub_frame_prev_register(struct frame_info *this_frame, void **this_cache, int regnum)
Definition: mips-tdep.c:3771
NORMAL_FRAME
Definition: frame.h:244
mips_stub_frame_this_id
static void mips_stub_frame_this_id(struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
Definition: mips-tdep.c:3762
mips_stub_frame_sniffer
static int mips_stub_frame_sniffer(const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
Definition: mips-tdep.c:3780
default_frame_unwind_stop_reason
enum unwind_stop_reason default_frame_unwind_stop_reason(struct frame_info *this_frame, void **this_cache)
Definition: frame-unwind.c:184

Definition at line 3805 of file mips-tdep.c.

Referenced by mips_gdbarch_init(), and mips_stub_frame_base_sniffer().

## ◆ mips_tdesc_gp32

struct target_desc* mips_tdesc_gp32

Definition at line 214 of file mips-tdep.c.

Referenced by _initialize_mips_tdep(), mips_linux_core_read_description(), and mips_register_g_packet_guesses().

## ◆ mips_tdesc_gp64

struct target_desc* mips_tdesc_gp64

Definition at line 215 of file mips-tdep.c.

Referenced by _initialize_mips_tdep(), mips_linux_core_read_description(), and mips_register_g_packet_guesses().

## ◆ mips_tx39_reg_names

const char* mips_tx39_reg_names[NUM_MIPS_PROCESSOR_REGS]
| static

Initial value:
= {
"sr", "lo", "hi", "bad", "cause", "pc",
"", "", "", "", "", "", "", "",
"", "", "", "", "", "", "", "",
"", "", "", "", "", "", "", "",
"", "", "", "", "", "", "", "",
"", "", "", "",
"", "", "", "", "", "", "", "",
"", "", "config", "cache", "debug", "depc", "epc",
}

Definition at line 584 of file mips-tdep.c.

Referenced by mips_gdbarch_init().

## ◆ setmipscmdlist

struct cmd_list_element* setmipscmdlist = NULL
| static

Definition at line 561 of file mips-tdep.c.

Referenced by _initialize_mips_tdep(), and set_mips_command().

## ◆ showmipscmdlist

struct cmd_list_element* showmipscmdlist = NULL
| static

Definition at line 562 of file mips-tdep.c.

Referenced by _initialize_mips_tdep(), and show_mips_command().