GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Functions | Variables
arc-tdep.c File Reference
#include "defs.h"
#include "arch-utils.h"
#include "elf-bfd.h"
#include "disasm.h"
#include "dwarf2/frame.h"
#include "frame-base.h"
#include "frame-unwind.h"
#include "gdbcore.h"
#include "reggroups.h"
#include "gdbcmd.h"
#include "objfiles.h"
#include "osabi.h"
#include "prologue-value.h"
#include "target-descriptions.h"
#include "trad-frame.h"
#include "opcode/arc.h"
#include "opcodes/arc-dis.h"
#include "arc-tdep.h"
#include "arch/arc.h"
#include <algorithm>
#include <sstream>

Go to the source code of this file.

Classes

struct  arc_frame_cache
 
struct  arc_register_feature
 
struct  arc_register_feature::register_info
 

Functions

static ULONGEST arc_insn_get_operand_value (const struct arc_instruction &insn, unsigned int operand_num)
 
static LONGEST arc_insn_get_operand_value_signed (const struct arc_instruction &insn, unsigned int operand_num)
 
static int arc_insn_get_memory_base_reg (const struct arc_instruction &insn)
 
static CORE_ADDR arc_insn_get_memory_offset (const struct arc_instruction &insn)
 
CORE_ADDR arc_insn_get_branch_target (const struct arc_instruction &insn)
 
static void arc_insn_dump (const struct arc_instruction &insn)
 
CORE_ADDR arc_insn_get_linear_next_pc (const struct arc_instruction &insn)
 
static void arc_write_pc (struct regcache *regcache, CORE_ADDR new_pc)
 
static void arc_virtual_frame_pointer (struct gdbarch *gdbarch, CORE_ADDR pc, int *reg_ptr, LONGEST *offset_ptr)
 
static CORE_ADDR arc_push_dummy_call (struct gdbarch *gdbarch, struct value *function, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, struct value **args, CORE_ADDR sp, function_call_return_method return_method, CORE_ADDR struct_addr)
 
static CORE_ADDR arc_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 int arc_cannot_fetch_register (struct gdbarch *gdbarch, int regnum)
 
static int arc_cannot_store_register (struct gdbarch *gdbarch, int regnum)
 
static void arc_extract_return_value (struct gdbarch *gdbarch, struct type *type, struct regcache *regcache, gdb_byte *valbuf)
 
static void arc_store_return_value (struct gdbarch *gdbarch, struct type *type, struct regcache *regcache, const gdb_byte *valbuf)
 
static int arc_get_longjmp_target (frame_info_ptr frame, CORE_ADDR *pc)
 
static enum return_value_convention arc_return_value (struct gdbarch *gdbarch, struct value *function, struct type *valtype, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf)
 
static CORE_ADDR arc_frame_base_address (frame_info_ptr this_frame, void **prologue_cache)
 
static pv_t arc_pv_get_operand (pv_t *regs, const struct arc_instruction &insn, int operand)
 
static bool arc_is_in_prologue (struct gdbarch *gdbarch, const struct arc_instruction &insn, pv_t *regs, struct pv_area *stack)
 
static CORE_ADDR arc_analyze_prologue (struct gdbarch *gdbarch, const CORE_ADDR entrypoint, const CORE_ADDR limit_pc, struct arc_frame_cache *cache)
 
static CORE_ADDR arc_skip_prologue (struct gdbarch *gdbarch, CORE_ADDR pc)
 
int arc_delayed_print_insn (bfd_vma addr, struct disassemble_info *info)
 
static int arc_breakpoint_kind_from_pc (struct gdbarch *gdbarch, CORE_ADDR *pcptr)
 
static const gdb_byte * arc_sw_breakpoint_from_kind (struct gdbarch *gdbarch, int kind, int *size)
 
static CORE_ADDR arc_frame_align (struct gdbarch *gdbarch, CORE_ADDR sp)
 
static void arc_print_frame_cache (struct gdbarch *gdbarch, const char *message, struct arc_frame_cache *cache, int addresses_known)
 
static struct arc_frame_cachearc_make_frame_cache (frame_info_ptr this_frame)
 
static void arc_frame_this_id (frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
 
static struct valuearc_frame_prev_register (frame_info_ptr this_frame, void **this_cache, int regnum)
 
static void arc_dwarf2_frame_init_reg (struct gdbarch *gdbarch, int regnum, struct dwarf2_frame_state_reg *reg, frame_info_ptr info)
 
static struct arc_frame_cachearc_make_sigtramp_frame_cache (frame_info_ptr this_frame)
 
static void arc_sigtramp_frame_this_id (frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
 
static struct valuearc_sigtramp_frame_prev_register (frame_info_ptr this_frame, void **this_cache, int regnum)
 
static int arc_sigtramp_frame_sniffer (const struct frame_unwind *self, frame_info_ptr this_frame, void **this_cache)
 
static enum arc_isa mach_type_to_arc_isa (const unsigned long mach)
 
arc_arch_features arc_arch_features_create (const bfd *abfd, const unsigned long mach)
 
static const struct tdesc_feature * find_obsolete_core_names (const struct target_desc *tdesc)
 
static const struct tdesc_feature * find_obsolete_aux_names (const struct target_desc *tdesc)
 
static arc_register_featuredetermine_core_reg_feature_set (const unsigned long mach)
 
static const arc_register_featuredetermine_aux_reg_feature_set ()
 
static void arc_update_acc_reg_names (const int byte_order)
 
static bool arc_check_tdesc_feature (struct tdesc_arch_data *tdesc_data, const struct tdesc_feature *feature, const struct arc_register_feature *reg_set)
 
static bool arc_check_for_hw_loops (const struct target_desc *tdesc, struct tdesc_arch_data *data)
 
static bool arc_tdesc_init (struct gdbarch_info info, const struct target_desc **tdesc, tdesc_arch_data_up *tdesc_data)
 
static ULONGEST arc_type_align (struct gdbarch *gdbarch, struct type *type)
 
static struct gdbarcharc_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 
static void arc_dump_tdep (struct gdbarch *gdbarch, struct ui_file *file)
 
static void dump_arc_instruction_command (const char *args, int from_tty)
 
void _initialize_arc_tdep ()
 

Variables

bool arc_debug
 
static struct cmd_list_elementmaintenance_print_arc_list = NULL
 
static const char * ARC_CORE_V1_OBSOLETE_FEATURE_NAME = "org.gnu.gdb.arc.core.arcompact"
 
static const char * ARC_CORE_V2_OBSOLETE_FEATURE_NAME = "org.gnu.gdb.arc.core.v2"
 
static const char * ARC_CORE_V2_REDUCED_OBSOLETE_FEATURE_NAME = "org.gnu.gdb.arc.core-reduced.v2"
 
static const char * ARC_AUX_OBSOLETE_FEATURE_NAME = "org.gnu.gdb.arc.aux-minimal"
 
static const char * ARC_CORE_FEATURE_NAME = "org.gnu.gdb.arc.core"
 
static const char * ARC_AUX_FEATURE_NAME = "org.gnu.gdb.arc.aux"
 
static struct arc_register_feature arc_v1_core_reg_feature
 
static struct arc_register_feature arc_v2_core_reg_feature
 
static const struct arc_register_feature arc_common_aux_reg_feature
 
static char * arc_disassembler_options = NULL
 
static const int MAX_PROLOGUE_LENGTH
 
static const gdb_byte arc_brk_s_be [] = { 0x7f, 0xff }
 
static const gdb_byte arc_brk_s_le [] = { 0xff, 0x7f }
 
static const gdb_byte arc_brk_be [] = { 0x25, 0x6f, 0x00, 0x3f }
 
static const gdb_byte arc_brk_le [] = { 0x6f, 0x25, 0x3f, 0x00 }
 
static const struct frame_unwind arc_frame_unwind
 
static const struct frame_unwind arc_sigtramp_frame_unwind
 
static const struct frame_base arc_normal_base
 

Function Documentation

◆ _initialize_arc_tdep()

void _initialize_arc_tdep ( )

◆ arc_analyze_prologue()

static CORE_ADDR arc_analyze_prologue ( struct gdbarch * gdbarch,
const CORE_ADDR entrypoint,
const CORE_ADDR limit_pc,
struct arc_frame_cache * cache )
static

◆ arc_arch_features_create()

arc_arch_features arc_arch_features_create ( const bfd * abfd,
const unsigned long mach )

Definition at line 1957 of file arc-tdep.c.

References mach_type_to_arc_isa().

Referenced by arc_linux_core_read_description(), and arc_tdesc_init().

◆ arc_breakpoint_kind_from_pc()

static int arc_breakpoint_kind_from_pc ( struct gdbarch * gdbarch,
CORE_ADDR * pcptr )
static

Definition at line 1576 of file arc-tdep.c.

References arc_brk_le, arc_brk_s_le, arc_mach_is_arc600(), and gdb_insn_length().

Referenced by arc_gdbarch_init().

◆ arc_cannot_fetch_register()

static int arc_cannot_fetch_register ( struct gdbarch * gdbarch,
int regnum )
static

Definition at line 860 of file arc-tdep.c.

References ARC_LIMM_REGNUM, ARC_RESERVED_REGNUM, and regnum.

Referenced by arc_gdbarch_init().

◆ arc_cannot_store_register()

static int arc_cannot_store_register ( struct gdbarch * gdbarch,
int regnum )
static

Definition at line 880 of file arc-tdep.c.

References ARC_LIMM_REGNUM, ARC_PCL_REGNUM, ARC_RESERVED_REGNUM, and regnum.

Referenced by arc_gdbarch_init().

◆ arc_check_for_hw_loops()

static bool arc_check_for_hw_loops ( const struct target_desc * tdesc,
struct tdesc_arch_data * data )
static

◆ arc_check_tdesc_feature()

static bool arc_check_tdesc_feature ( struct tdesc_arch_data * tdesc_data,
const struct tdesc_feature * feature,
const struct arc_register_feature * reg_set )
static

◆ arc_delayed_print_insn()

int arc_delayed_print_insn ( bfd_vma addr,
struct disassemble_info * info )

◆ arc_dump_tdep()

static void arc_dump_tdep ( struct gdbarch * gdbarch,
struct ui_file * file )
static

◆ arc_dwarf2_frame_init_reg()

static void arc_dwarf2_frame_init_reg ( struct gdbarch * gdbarch,
int regnum,
struct dwarf2_frame_state_reg * reg,
frame_info_ptr info )
static

◆ arc_extract_return_value()

static void arc_extract_return_value ( struct gdbarch * gdbarch,
struct type * type,
struct regcache * regcache,
gdb_byte * valbuf )
static

◆ arc_frame_align()

static CORE_ADDR arc_frame_align ( struct gdbarch * gdbarch,
CORE_ADDR sp )
static

Definition at line 1615 of file arc-tdep.c.

Referenced by arc_gdbarch_init().

◆ arc_frame_base_address()

static CORE_ADDR arc_frame_base_address ( frame_info_ptr this_frame,
void ** prologue_cache )
static

Definition at line 1064 of file arc-tdep.c.

References ARC_FP_REGNUM, and get_frame_register_unsigned().

Referenced by arc_make_sigtramp_frame_cache().

◆ arc_frame_prev_register()

static struct value * arc_frame_prev_register ( frame_info_ptr this_frame,
void ** this_cache,
int regnum )
static

◆ arc_frame_this_id()

static void arc_frame_this_id ( frame_info_ptr this_frame,
void ** this_cache,
struct frame_id * this_id )
static

◆ arc_gdbarch_init()

static struct gdbarch * arc_gdbarch_init ( struct gdbarch_info info,
struct gdbarch_list * arches )
static

Definition at line 2247 of file arc-tdep.c.

References arc_arch_is_hs(), arc_breakpoint_kind_from_pc(), arc_cannot_fetch_register(), arc_cannot_store_register(), arc_check_for_hw_loops(), arc_debug_printf, arc_delayed_print_insn(), arc_disassembler_options, arc_dwarf2_frame_init_reg(), arc_frame_align(), arc_frame_unwind, arc_get_longjmp_target(), ARC_LAST_REGNUM, arc_mach_is_arc600(), arc_normal_base, ARC_PC_REGNUM, arc_push_dummy_call(), arc_push_dummy_code(), arc_return_value(), arc_sigtramp_frame_unwind, arc_skip_prologue(), ARC_SP_REGNUM, ARC_STATUS32_REGNUM, arc_sw_breakpoint_from_kind(), arc_tdesc_init(), arc_type_align(), arc_virtual_frame_pointer(), arc_write_pc(), core_addr_lessthan(), dwarf2_append_unwinders(), dwarf2_frame_set_init_reg(), floatformats_ieee_double, floatformats_ieee_single, frame_base_set_default(), frame_unwind_append_unwinder(), gdbarch_alloc(), gdbarch_init_osabi(), registry< T >::get(), arc_gdbarch_tdep::has_hw_loops, arc_gdbarch_tdep::jb_pc, set_gdbarch_addr_bit(), set_gdbarch_believe_pcc_promotion(), set_gdbarch_breakpoint_kind_from_pc(), set_gdbarch_cannot_fetch_register(), set_gdbarch_cannot_step_breakpoint(), set_gdbarch_cannot_store_register(), set_gdbarch_char_signed(), set_gdbarch_decr_pc_after_break(), set_gdbarch_disassembler_options(), set_gdbarch_double_bit(), set_gdbarch_double_format(), set_gdbarch_float_bit(), set_gdbarch_float_format(), set_gdbarch_fp0_regnum(), set_gdbarch_frame_align(), set_gdbarch_get_longjmp_target(), set_gdbarch_have_nonsteppable_watchpoint(), set_gdbarch_inner_than(), set_gdbarch_int_bit(), set_gdbarch_long_bit(), set_gdbarch_long_long_bit(), set_gdbarch_max_insn_length(), set_gdbarch_num_pseudo_regs(), set_gdbarch_num_regs(), set_gdbarch_pc_regnum(), set_gdbarch_print_insn(), set_gdbarch_ps_regnum(), set_gdbarch_ptr_bit(), set_gdbarch_push_dummy_call(), set_gdbarch_push_dummy_code(), set_gdbarch_return_value(), set_gdbarch_short_bit(), set_gdbarch_skip_prologue(), set_gdbarch_sp_regnum(), set_gdbarch_sw_breakpoint_from_kind(), set_gdbarch_type_align(), set_gdbarch_valid_disassembler_options(), set_gdbarch_virtual_frame_pointer(), set_gdbarch_write_pc(), tdesc_architecture(), tdesc_data, tdesc_use_registers(), and xfree().

Referenced by _initialize_arc_tdep().

◆ arc_get_longjmp_target()

static int arc_get_longjmp_target ( frame_info_ptr frame,
CORE_ADDR * pc )
static

◆ arc_insn_dump()

static void arc_insn_dump ( const struct arc_instruction & insn)
static

◆ arc_insn_get_branch_target()

CORE_ADDR arc_insn_get_branch_target ( const struct arc_instruction & insn)

◆ arc_insn_get_linear_next_pc()

CORE_ADDR arc_insn_get_linear_next_pc ( const struct arc_instruction & insn)

◆ arc_insn_get_memory_base_reg()

static int arc_insn_get_memory_base_reg ( const struct arc_instruction & insn)
static

Definition at line 365 of file arc-tdep.c.

References ARC_SP_REGNUM.

Referenced by arc_insn_dump(), and arc_is_in_prologue().

◆ arc_insn_get_memory_offset()

static CORE_ADDR arc_insn_get_memory_offset ( const struct arc_instruction & insn)
static

Definition at line 384 of file arc-tdep.c.

References arc_insn_get_operand_value(), and value.

Referenced by arc_insn_dump(), and arc_is_in_prologue().

◆ arc_insn_get_operand_value()

static ULONGEST arc_insn_get_operand_value ( const struct arc_instruction & insn,
unsigned int operand_num )
static

◆ arc_insn_get_operand_value_signed()

static LONGEST arc_insn_get_operand_value_signed ( const struct arc_instruction & insn,
unsigned int operand_num )
static

Definition at line 336 of file arc-tdep.c.

References gdb_static_assert(), get_current_regcache(), regcache_cooked_read_signed(), and value.

Referenced by arc_insn_dump().

◆ arc_is_in_prologue()

static bool arc_is_in_prologue ( struct gdbarch * gdbarch,
const struct arc_instruction & insn,
pv_t * regs,
struct pv_area * stack )
static

◆ arc_make_frame_cache()

static struct arc_frame_cache * arc_make_frame_cache ( frame_info_ptr this_frame)
static

◆ arc_make_sigtramp_frame_cache()

static struct arc_frame_cache * arc_make_sigtramp_frame_cache ( frame_info_ptr this_frame)
static

◆ arc_print_frame_cache()

static void arc_print_frame_cache ( struct gdbarch * gdbarch,
const char * message,
struct arc_frame_cache * cache,
int addresses_known )
static

◆ arc_push_dummy_call()

static CORE_ADDR arc_push_dummy_call ( struct gdbarch * gdbarch,
struct value * function,
struct regcache * regcache,
CORE_ADDR bp_addr,
int nargs,
struct value ** args,
CORE_ADDR sp,
function_call_return_method return_method,
CORE_ADDR struct_addr )
static

◆ arc_push_dummy_code()

static CORE_ADDR arc_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 847 of file arc-tdep.c.

References entry_point_address().

Referenced by arc_gdbarch_init().

◆ arc_pv_get_operand()

static pv_t arc_pv_get_operand ( pv_t * regs,
const struct arc_instruction & insn,
int operand )
static

Definition at line 1073 of file arc-tdep.c.

References arc_insn_get_operand_value(), and pv_constant().

Referenced by arc_is_in_prologue().

◆ arc_return_value()

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

◆ arc_sigtramp_frame_prev_register()

static struct value * arc_sigtramp_frame_prev_register ( frame_info_ptr this_frame,
void ** this_cache,
int regnum )
static

◆ arc_sigtramp_frame_sniffer()

static int arc_sigtramp_frame_sniffer ( const struct frame_unwind * self,
frame_info_ptr this_frame,
void ** this_cache )
static

◆ arc_sigtramp_frame_this_id()

static void arc_sigtramp_frame_this_id ( frame_info_ptr this_frame,
void ** this_cache,
struct frame_id * this_id )
static

◆ arc_skip_prologue()

static CORE_ADDR arc_skip_prologue ( struct gdbarch * gdbarch,
CORE_ADDR pc )
static

◆ arc_store_return_value()

static void arc_store_return_value ( struct gdbarch * gdbarch,
struct type * type,
struct regcache * regcache,
const gdb_byte * valbuf )
static

◆ arc_sw_breakpoint_from_kind()

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

Definition at line 1593 of file arc-tdep.c.

References arc_brk_be, arc_brk_le, arc_brk_s_be, arc_brk_s_le, gdbarch_byte_order(), and size.

Referenced by arc_gdbarch_init().

◆ arc_tdesc_init()

static bool arc_tdesc_init ( struct gdbarch_info info,
const struct target_desc ** tdesc,
tdesc_arch_data_up * tdesc_data )
static

◆ arc_type_align()

static ULONGEST arc_type_align ( struct gdbarch * gdbarch,
struct type * type )
static

Definition at line 2219 of file arc-tdep.c.

References check_typedef(), type::code(), and type::length().

Referenced by arc_gdbarch_init().

◆ arc_update_acc_reg_names()

static void arc_update_acc_reg_names ( const int byte_order)
static

◆ arc_virtual_frame_pointer()

static void arc_virtual_frame_pointer ( struct gdbarch * gdbarch,
CORE_ADDR pc,
int * reg_ptr,
LONGEST * offset_ptr )
static

Definition at line 653 of file arc-tdep.c.

References gdbarch_sp_regnum().

Referenced by arc_gdbarch_init().

◆ arc_write_pc()

static void arc_write_pc ( struct regcache * regcache,
CORE_ADDR new_pc )
static

◆ determine_aux_reg_feature_set()

static const arc_register_feature * determine_aux_reg_feature_set ( )
static

Definition at line 2036 of file arc-tdep.c.

References arc_common_aux_reg_feature.

Referenced by arc_check_for_hw_loops(), and arc_tdesc_init().

◆ determine_core_reg_feature_set()

static arc_register_feature * determine_core_reg_feature_set ( const unsigned long mach)
static

◆ dump_arc_instruction_command()

static void dump_arc_instruction_command ( const char * args,
int from_tty )
static

◆ find_obsolete_aux_names()

static const struct tdesc_feature * find_obsolete_aux_names ( const struct target_desc * tdesc)
static

Definition at line 2009 of file arc-tdep.c.

References ARC_AUX_OBSOLETE_FEATURE_NAME, and tdesc_find_feature().

Referenced by arc_tdesc_init().

◆ find_obsolete_core_names()

static const struct tdesc_feature * find_obsolete_core_names ( const struct target_desc * tdesc)
static

◆ mach_type_to_arc_isa()

static enum arc_isa mach_type_to_arc_isa ( const unsigned long mach)
static

Definition at line 1939 of file arc-tdep.c.

References ARC_ISA_ARCV1, and ARC_ISA_ARCV2.

Referenced by arc_arch_features_create(), and determine_core_reg_feature_set().

Variable Documentation

◆ ARC_AUX_FEATURE_NAME

const char* ARC_AUX_FEATURE_NAME = "org.gnu.gdb.arc.aux"
static

Definition at line 136 of file arc-tdep.c.

Referenced by arc_check_for_hw_loops(), and arc_tdesc_init().

◆ ARC_AUX_OBSOLETE_FEATURE_NAME

const char* ARC_AUX_OBSOLETE_FEATURE_NAME = "org.gnu.gdb.arc.aux-minimal"
static

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

Referenced by find_obsolete_aux_names().

◆ arc_brk_be

const gdb_byte arc_brk_be[] = { 0x25, 0x6f, 0x00, 0x3f }
static

Definition at line 1551 of file arc-tdep.c.

Referenced by arc_sw_breakpoint_from_kind().

◆ arc_brk_le

const gdb_byte arc_brk_le[] = { 0x6f, 0x25, 0x3f, 0x00 }
static

Definition at line 1552 of file arc-tdep.c.

Referenced by arc_breakpoint_kind_from_pc(), and arc_sw_breakpoint_from_kind().

◆ arc_brk_s_be

const gdb_byte arc_brk_s_be[] = { 0x7f, 0xff }
static

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

Referenced by arc_sw_breakpoint_from_kind().

◆ arc_brk_s_le

const gdb_byte arc_brk_s_le[] = { 0xff, 0x7f }
static

Definition at line 1550 of file arc-tdep.c.

Referenced by arc_breakpoint_kind_from_pc(), and arc_sw_breakpoint_from_kind().

◆ arc_common_aux_reg_feature

const struct arc_register_feature arc_common_aux_reg_feature
static
Initial value:
=
{
{
{ ARC_FIRST_AUX_REGNUM + 0, { "pc" }, true },
{ ARC_FIRST_AUX_REGNUM + 1, { "status32" }, true },
{ ARC_FIRST_AUX_REGNUM + 2, { "lp_start" }, false },
{ ARC_FIRST_AUX_REGNUM + 3, { "lp_end" }, false },
{ ARC_FIRST_AUX_REGNUM + 4, { "bta" }, false }
}
}
static const char * ARC_AUX_FEATURE_NAME
Definition arc-tdep.c:136
@ ARC_FIRST_AUX_REGNUM
Definition arc-tdep.h:79

Definition at line 289 of file arc-tdep.c.

Referenced by determine_aux_reg_feature_set().

◆ ARC_CORE_FEATURE_NAME

const char* ARC_CORE_FEATURE_NAME = "org.gnu.gdb.arc.core"
static

Definition at line 135 of file arc-tdep.c.

Referenced by arc_tdesc_init().

◆ ARC_CORE_V1_OBSOLETE_FEATURE_NAME

const char* ARC_CORE_V1_OBSOLETE_FEATURE_NAME = "org.gnu.gdb.arc.core.arcompact"
static

Definition at line 126 of file arc-tdep.c.

Referenced by find_obsolete_core_names().

◆ ARC_CORE_V2_OBSOLETE_FEATURE_NAME

const char* ARC_CORE_V2_OBSOLETE_FEATURE_NAME = "org.gnu.gdb.arc.core.v2"
static

Definition at line 128 of file arc-tdep.c.

Referenced by find_obsolete_core_names().

◆ ARC_CORE_V2_REDUCED_OBSOLETE_FEATURE_NAME

const char* ARC_CORE_V2_REDUCED_OBSOLETE_FEATURE_NAME = "org.gnu.gdb.arc.core-reduced.v2"
static

Definition at line 130 of file arc-tdep.c.

Referenced by find_obsolete_core_names().

◆ arc_debug

bool arc_debug

◆ arc_disassembler_options

char* arc_disassembler_options = NULL
static

Definition at line 301 of file arc-tdep.c.

Referenced by arc_gdbarch_init().

◆ arc_frame_unwind

const struct frame_unwind arc_frame_unwind
static
Initial value:
= {
"arc prologue",
NULL,
NULL,
NULL
}
static void arc_frame_this_id(frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
Definition arc-tdep.c:1712
static struct value * arc_frame_prev_register(frame_info_ptr this_frame, void **this_cache, int regnum)
Definition arc-tdep.c:1757
int default_frame_sniffer(const struct frame_unwind *self, frame_info_ptr this_frame, void **this_prologue_cache)
enum unwind_stop_reason default_frame_unwind_stop_reason(frame_info_ptr this_frame, void **this_cache)
@ NORMAL_FRAME
Definition frame.h:187

Definition at line 1902 of file arc-tdep.c.

Referenced by arc_gdbarch_init().

◆ arc_normal_base

const struct frame_base arc_normal_base
static
Initial value:
= {
}
static CORE_ADDR arc_frame_base_address(frame_info_ptr this_frame, void **prologue_cache)
Definition arc-tdep.c:1064
static const struct frame_unwind arc_frame_unwind
Definition arc-tdep.c:1902

Definition at line 1931 of file arc-tdep.c.

Referenced by arc_gdbarch_init().

◆ arc_sigtramp_frame_unwind

const struct frame_unwind arc_sigtramp_frame_unwind
static
Initial value:
= {
"arc sigtramp",
NULL,
NULL,
NULL
}
static void arc_sigtramp_frame_this_id(frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
Definition arc-tdep.c:1847
static struct value * arc_sigtramp_frame_prev_register(frame_info_ptr this_frame, void **this_cache, int regnum)
Definition arc-tdep.c:1866
static int arc_sigtramp_frame_sniffer(const struct frame_unwind *self, frame_info_ptr this_frame, void **this_cache)
Definition arc-tdep.c:1883
@ SIGTRAMP_FRAME
Definition frame.h:198

Definition at line 1918 of file arc-tdep.c.

Referenced by arc_gdbarch_init().

◆ arc_v1_core_reg_feature

struct arc_register_feature arc_v1_core_reg_feature
static

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

Referenced by arc_update_acc_reg_names(), and determine_core_reg_feature_set().

◆ arc_v2_core_reg_feature

struct arc_register_feature arc_v2_core_reg_feature
static

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

Referenced by arc_update_acc_reg_names(), and determine_core_reg_feature_set().

◆ maintenance_print_arc_list

struct cmd_list_element* maintenance_print_arc_list = NULL
static

Definition at line 95 of file arc-tdep.c.

Referenced by _initialize_arc_tdep().

◆ MAX_PROLOGUE_LENGTH

const int MAX_PROLOGUE_LENGTH
static
Initial value:
= 4 * (ARC_R25_REGNUM - ARC_R13_REGNUM + 1 + 2 + 1 + 6
@ ARC_LAST_ARG_REGNUM
Definition arc-tdep.h:95
@ ARC_R25_REGNUM
Definition arc-tdep.h:45
@ ARC_FIRST_ARG_REGNUM
Definition arc-tdep.h:94
@ ARC_R13_REGNUM
Definition arc-tdep.h:43

Definition at line 1441 of file arc-tdep.c.

Referenced by arc_make_frame_cache(), and arc_skip_prologue().